トップページ > プログラム > 2016年01月29日 > zKTo8s/w

書き込み順位&時間帯一覧

4 位/227 ID中時間01234567891011121314151617181920212223Total
書き込み数0000002000010001100101007



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net

書き込みレス一覧

Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
674 :デフォルトの名無しさん[sage]:2016/01/29(金) 06:41:43.06 ID:zKTo8s/w
For Eachの使いにくさはこのスレでも何度か指摘されてるだろ。
まずひとつのシーケンスしか扱えないのがつらいし、コピーベースだから効率的でもない。
結局はカウンタを使うことが多い。
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
675 :デフォルトの名無しさん[sage]:2016/01/29(金) 06:49:02.29 ID:zKTo8s/w
とにかくVBAのFor Eachは全然ダメだ。
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
680 :デフォルトの名無しさん[sage]:2016/01/29(金) 11:26:35.90 ID:zKTo8s/w
風流だな
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
682 :デフォルトの名無しさん[sage]:2016/01/29(金) 15:51:56.92 ID:zKTo8s/w
>>666
VBAではループカウンタを使うのがベター、という結論でいいのか?
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
684 :デフォルトの名無しさん[sage]:2016/01/29(金) 16:23:04.02 ID:zKTo8s/w
>>683
使いにくさは認識しているだろババア
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
687 :デフォルトの名無しさん[sage]:2016/01/29(金) 19:11:10.65 ID:zKTo8s/w
For Each自体は良いものだ。しかし、

ひとつのシーケンスしか扱えない
→ arr1(i) + arr2(i) を簡単に書けない

同時に複数の要素にアクセスできない
→ arr(i+1) - arr(i) を簡単に書けない

コピーなので代入ができない(配列)
→ Each z... z = z * 2 とできない

コピーコストがある(配列)
→ ただループを回すだけで時間がかかることがある

というようなトレードオフがある。
最初の二つは標準のコンテナライブラリが充実してる言語だと大した問題にならないが、VBAにはそういうものがない。
For Eachの使いどころは相対的に狭いと思う。
Excel VBA 質問スレ Part39 [転載禁止]©2ch.net
689 :デフォルトの名無しさん[sage]:2016/01/29(金) 21:08:56.19 ID:zKTo8s/w
>>688
おお、そうだな。
違うことを書いたり消したりしてるうち「トレードオフ」だけ変に残ってた。

「というような難点もある。」
に言い換えます。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。