- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
479 :デフォルトの名無しさん[sage]:2015/02/18(水) 08:22:38.53 ID:yLcFaQ17 - >>478
ない VBAって参照を返せないのがなんとも不便だよなあ。ByRefで受け取った大きな配列をByRefで出力する方法はないものか。 これがあればパイプ処理できるのに。
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
483 :デフォルトの名無しさん[sage]:2015/02/18(水) 10:19:46.66 ID:yLcFaQ17 - >>482
配列に対する操作を繋げたいんですよ。 func2(func2(func1(matrix))) とやるとmatrixの3ヵ所が変更されるみたいに。 そのたびに新しく配列を作って返すんじゃ効率が悪いから、副作用ありで繋げる処理を書きたい。
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
484 :デフォルトの名無しさん[sage]:2015/02/18(水) 11:41:15.32 ID:yLcFaQ17 - 間違えた
func2(func2(func1(matrix)))じゃなくて func3(func2(func1(matrix)))
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
487 :デフォルトの名無しさん[sage]:2015/02/18(水) 11:51:14.19 ID:yLcFaQ17 - それともうひとつ言うと、for each で取る要素が参照じゃないのが不満。
x = x * 2 という式で各要素を2倍するなんてことができない。 そこをあきらめて y = x * 2 として別な配列に入れようと思っても、実際にやろうとすると y(i, j) って 書かなきゃならないが i と j を動かすスマートな方法がない。
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
488 :デフォルトの名無しさん[sage]:2015/02/18(水) 11:57:49.28 ID:yLcFaQ17 - >>485
受け取るときはByRefにすればいいんだけど、関数からreturnするときはコピーが作られちゃうんですよ。 出した例でいうと、func1した結果は引数matrixに反映されるけど、後続処理はコピーに対する処理となるので反映されないです。
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
492 :デフォルトの名無しさん[sage]:2015/02/18(水) 12:18:55.27 ID:yLcFaQ17 - >>491
たいていの処理を使い捨ての一行プログラムでこなせたりする?
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
496 :デフォルトの名無しさん[sage]:2015/02/18(水) 12:35:51.08 ID:yLcFaQ17 - >>495
それをどこから(どういう環境から)実行するの? 対話的に実行できる?
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
504 :デフォルトの名無しさん[sage]:2015/02/18(水) 14:52:10.22 ID:yLcFaQ17 - >>500
Rubyとか興味なくはないけど、一からやるとなると面倒だね。 VBAもツールが揃ってくると書き捨ての処理は一行プログラムで書けるようになってきて、そうなると参照返しが欲しくなる。 行を分けろと言うのは正論だけどさ。
|
- Excel VBA 質問スレ Part36 [転載禁止]©2ch.net
515 :デフォルトの名無しさん[sage]:2015/02/18(水) 19:29:22.65 ID:yLcFaQ17 - 他言語使うの、プロクラムは書けても連繋がなあ。
自分もdllいくつか使ってるけど結局は俺様ローカルな世界になっちまう。
|