|
2点教えてください。
例えばセルA1,B1,D5に数値の1,2,3がそれぞれ入っていたとします。
これをA1はE1に、B1はF1に、D5はG1に転記する場合
.
.
Set A = Union(Range("A1:B1"), Range("D5"))
Set B = Range("E1:G1")
For Each I In A
B(I).Value = A(I).Value
Next I
1.こうすると、A1,B1の値は、E1,F1に転記されますが、D5の値は転記
されません。いろいろテストしてみるとどうも、A2の値がG1に転記されます。
すなわち、UNIONで離れたセルをつけても、FOR EACHの中では
はじめの、A1:B1のRENGEの中を順に探していき、個数は3個なので
A2までを対象にしてしまっているようです。これをきちんと、D5をG1に
転記させる方法は無いのでしょうか。配列などを使えばできそうですが、
UNIONでは、無理なのでしょうか?
2.上記の記述に何か誤りはあるのでしょうか。有ればどう修正すればいいのでし
ょうか?
というのは、A1、B1などの対象となっているセルの値が数値なら
動くのですが、文字にすると、実行時エラー”13” 型が一致しません。
のエラーメッセージでできません。
どちらかというと文字データで使う場合のほうが多いので、文字でもできる
ようにしたいです。
以上2点よろしくお願いします。
|
|