[過去ログ]
VBAなんでも質問スレ Part2 [転載禁止]©2ch.net (1002レス)
VBAなんでも質問スレ Part2 [転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1432173164/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
416: デフォルトの名無しさん [] 2017/11/08(水) 23:08:47.37 ID:aQlO1Uq5 >>415 そのくらいの事を自分でできないなら ピボット使った方がいいと思うぞ バグって計算結果が合わないから http://mevius.5ch.net/test/read.cgi/tech/1432173164/416
417: デフォルトの名無しさん [] 2017/11/08(水) 23:25:51.57 ID:0sSRKP/b そのくらいの事を自分でできないから質問してんだろ そのくらいの事を理解できないなら質問スレに来ない方がいいのに http://mevius.5ch.net/test/read.cgi/tech/1432173164/417
418: デフォルトの名無しさん [] 2017/11/08(水) 23:38:17.91 ID:aQlO1Uq5 そのくらいの事も判らない人にも実現できる方法を提案してるだろ http://mevius.5ch.net/test/read.cgi/tech/1432173164/418
419: デフォルトの名無しさん [sage] 2017/11/09(木) 00:17:55.65 ID:hDRDp7cw https://i.imgur.com/wtkTdlA.png 上のように各列の情報に応じて、一定の条件にヒットしたら評価欄に追記、ということをしているのですが、 上手い書き方が思いつかず、冗長で読みにくいコードになってしまいます https://i.imgur.com/cE0kOho.png どうすれば綺麗で読みやすいコードになるでしょうか? 特に、変数(ここでは「評価」)の参照先のセルに書き込みつつ、変数の値自体も更新するスマートな方法と If文で2つの条件が当てはまった場合に両方の処理を実行させる(ここでは40点以下と60点未満のIf文を一つで済ませるとか)方法があれば知りたいです http://mevius.5ch.net/test/read.cgi/tech/1432173164/419
420: デフォルトの名無しさん [sage] 2017/11/09(木) 03:11:02.61 ID:HAMnFTNh >>419 配列を使え あとソースを読んだり修正したりやりにくいから画像にせずそのままテキストとして貼ってくれ 科目 = Array("国語", "算数", "理科") For j = 0 to 2 点数 = i.Offset(0, j + 1) If 点数 <= 40 Then i.offset(0, -1).Value = i.offset(0, -1).Value & 科目(j) & "の点数が以下略" & vbCrLf みたいな感じで教科の数に関わりなく記述を1回にできる 条件が3つ以上ある時はCaseで分ける方法もあるけど、どんどん文字列を追加するならIfを並べる今の書き方で別に悪くない http://mevius.5ch.net/test/read.cgi/tech/1432173164/420
421: デフォルトの名無しさん [sage] 2017/11/09(木) 08:39:48.02 ID:m3IDSHjM ありがとうございます、やってみます (コードは行数制限とインデントが反映されなかったのでつい画像に…すみません) http://mevius.5ch.net/test/read.cgi/tech/1432173164/421
422: デフォルトの名無しさん [] 2017/11/10(金) 08:15:39.86 ID:vvDXnBRS オートフィルの連続データでA1が0なら終わりでそれ以外なら下にオートフィルの連続データを追加して行くってどうやればいい? http://mevius.5ch.net/test/read.cgi/tech/1432173164/422
423: デフォルトの名無しさん [sage] 2017/11/10(金) 08:52:12.12 ID:EDTrdPIL 何をどこまで追加すんの? http://mevius.5ch.net/test/read.cgi/tech/1432173164/423
424: デフォルトの名無しさん [] 2017/11/10(金) 09:18:59.30 ID:vvDXnBRS 下に一つオートフィルの連続データを追加してもしもその数が0以外ならばその下に一つづつ追加してもし0になったら終わるってことです オートフィルの連続データまでは成功しました! http://mevius.5ch.net/test/read.cgi/tech/1432173164/424
425: デフォルトの名無しさん [sage] 2017/11/10(金) 12:58:08.94 ID:MIqJX5DT >>424 何をやりたいのかさっぱりわからんから > オートフィルの連続データまでは成功しました! のコードを晒してくれ http://mevius.5ch.net/test/read.cgi/tech/1432173164/425
426: デフォルトの名無しさん [sage] 2017/11/10(金) 22:07:12.41 ID:KbRkXeO5 何をどーしたいのかよーわからんが、 オートフィルの連続データが完成したならDo While Loopでも使えばいいんじゃね http://mevius.5ch.net/test/read.cgi/tech/1432173164/426
427: デフォルトの名無しさん [] 2017/11/11(土) 10:59:01.85 ID:t1iacSS7 そうですね連続データと探す作業分けてDo until使ってみたら目的は達成できました ありがとございます http://mevius.5ch.net/test/read.cgi/tech/1432173164/427
428: デフォルトの名無しさん [sage] 2017/11/16(木) 11:42:09.40 ID:DcGHOE5h 漠然とした質問で申し訳ない コレクションというのがあるけど、その利点というかこういう場合に使うとかという のを教えてくれないだろうか。配列は動的配列も含めてよく使うけどコレクション というのはあるのは知ってるけどどういう場合に使うものなのか判らない。 (まぁそれでも何とかなってるということは今の時点ではそれでも問題ないって ことでもあるんだけど) http://mevius.5ch.net/test/read.cgi/tech/1432173164/428
429: デフォルトの名無しさん [] 2017/11/16(木) 12:38:12.83 ID:Xd3mhum+ >>428 Dictinonaryだとキーが重複してたらエラーになるから 重複させたくない場合は便利だと思う あと既にそのキーが登録してあるか調べるメソッドがあるから便利 配列でも実現出来るけど生産性の問題だと思う http://mevius.5ch.net/test/read.cgi/tech/1432173164/429
430: デフォルトの名無しさん [sage] 2017/11/16(木) 12:40:16.53 ID:+IKZz2Nz >>428 Excelならコレクションは知らないうちに必ず使ってるから心配しなくてもいい オブジェクトを複数まとめた物がコレクションで、例えばワークシートオブジェクトをまとめた物もコレクションの一種 新規ブックを作るとワークシートが3枚あるじゃろ?それがもう既にコレクションなんだわ 名前をよく見ると「Worksheets」って複数形になっとるじゃろ?これが「複数まとめた」コレクションを示しておるのじゃ http://mevius.5ch.net/test/read.cgi/tech/1432173164/430
431: デフォルトの名無しさん [sage] 2017/11/16(木) 16:08:34.06 ID:mcjOn36E >>428 コレクションの便利さを実感できるのは、For Each 〜 Nextとか http://mevius.5ch.net/test/read.cgi/tech/1432173164/431
432: デフォルトの名無しさん [] 2017/11/16(木) 17:01:22.70 ID:yjV64GpF For Each 配列でも使えるけどね http://mevius.5ch.net/test/read.cgi/tech/1432173164/432
433: デフォルトの名無しさん [sage] 2017/11/16(木) 19:57:40.06 ID:NwFToy+4 広い意味では配列もコレクション 元質問のコレクションが何指してるか質問からは分からん http://mevius.5ch.net/test/read.cgi/tech/1432173164/433
434: デフォルトの名無しさん [] 2017/11/16(木) 22:05:24.15 ID:CQAbf3aD >>433 どの言語でもコレクションの定義は曖昧だからなあ。 配列のように物理的に連続したメモリ領域で動かせないものが配列。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/434
435: 428 [sage] 2017/11/17(金) 16:52:50.63 ID:wkN6jGAZ 気付かないうちにコレクションを使ってたってのは、あぁそうなのかって感じですけど >元質問のコレクションが何指してるか 思い浮かべてんのは連想配列とかディクショナリとかってやつですかね。 ディクショナリが重複チェックにも使えるってのは知りましたが。 今現在動かしているのをディクショナリに変えて見ようかなとと思ってます。 どちらにしろ自分で判らないことにはすすまんので。 後、曖昧模糊とした質問に答えてくれた皆さん、ありがとう http://mevius.5ch.net/test/read.cgi/tech/1432173164/435
436: デフォルトの名無しさん [] 2017/11/17(金) 18:29:39.77 ID:71HLXjvB 連想配列は配列と言いながら実体はコレクション http://mevius.5ch.net/test/read.cgi/tech/1432173164/436
437: デフォルトの名無しさん [sage] 2017/11/18(土) 09:55:58.36 ID:8LVfn2cG 配列数の制御がめんどいし 個々のデータ型も合わせんでいいし http://mevius.5ch.net/test/read.cgi/tech/1432173164/437
438: デフォルトの名無しさん [sage] 2017/11/19(日) 20:25:41.56 ID:TCtIBT5G 感覚的な話になるけど、例えばA列、B列、C列には○と×が入っててD列には何かの名前が入ってる時に、A、B、Cの組み合わせが×、○、○の時のD列の名前を表示したいとするわな。 こういう場合は一行ずつ見て行って×、○、○の組を探すわな。 こういう場合はFor Next使うわな。 つまり普通の配列が感覚に合う。 一方、A1:F100の範囲の各セルで1つだけ○、他は全て×の時に○のアドレスを知りたいなんて時には見つかるまで全てチェックすれば良いわけで、どう見ていくかなんて関係無いわな。 こういう場合はFor Each Next使うわな。 つまり連想配列が感覚に合う。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/438
439: デフォルトの名無しさん [sage] 2017/11/19(日) 22:00:10.14 ID:jY4FOG+m >>438 そんなもん普通はvlookup使うわな。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/439
440: デフォルトの名無しさん [sage] 2017/11/20(月) 09:52:50.14 ID:6BLE5ZLY >>439 ばーか。 感覚を例として挙げてることが分からないバカは黙ってろ。 もっと上手い方法があるだろうことは最初から分かってる。 順番を意識しないIteratorの感覚を説明してる。 コレクションにだって順番は実際はある。 しかしそれを意識しないような場合にぴったりということだ。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/440
441: デフォルトの名無しさん [sage] 2017/11/20(月) 11:39:33.25 ID:VyTKZ5qI ああ言えばこういうわな http://mevius.5ch.net/test/read.cgi/tech/1432173164/441
442: デフォルトの名無しさん [sage] 2017/11/20(月) 19:55:38.19 ID:9xFKx2hL 他人の回答の批判とかするほうがおかしいね 質問に対して自分の考えで回答すればいいのに http://mevius.5ch.net/test/read.cgi/tech/1432173164/442
443: デフォルトの名無しさん [] 2017/11/20(月) 20:06:38.53 ID:Pkea+7u9 適当に批判してやらなきゃお前ら好き勝手に質問と関係ない事ばかり言うじゃん 批判してくれる奴に感謝しろよw http://mevius.5ch.net/test/read.cgi/tech/1432173164/443
444: デフォルトの名無しさん [sage] 2017/11/20(月) 22:04:34.15 ID:9xFKx2hL 質問と関係ないこと言ってもいいと思うけどなんでそれが駄目なのかな? http://mevius.5ch.net/test/read.cgi/tech/1432173164/444
445: デフォルトの名無しさん [] 2017/11/20(月) 22:24:58.18 ID:Pkea+7u9 >>444 自分は質問と関係ない自分語りするけどそれを批判されるのは許せないってか? どんだけワガママに育てられたんだお前は http://mevius.5ch.net/test/read.cgi/tech/1432173164/445
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 557 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.013s