
ExcelVBAの配列変数で一括でセルに数式を挿入する方法
ExcelVBAでTEST1シートを参照して、TEST2シートに数式を貼り付けたいと思っています。
例えばTEST2シートのA1セルには、TEST1シートのA1を参照する数式
=IF('TEST1'!A1="","",'TEST1'!A1))を挿入、
TEST2シートのA2セルには、TEST1シートのA2を参照する数式
=IF('TEST1'!A2="","",'TEST1'!A2))を挿入、
それをA1セルからZ10セルまで同様に数式を挿入したいと思っています。
以下のように配列変数を用いて、一括で挿入すると数式ではなく、文字が入ってしまいます。
Sheets("TEST2").Cells(1, 1).Resize(10, 26).Formula = SUSHIKI
※SUSHIKI←数式を入れた配列
どのような記述を行えば、数式を貼り付けることができるができるでしょうか。
できればOffsetを使用した形で作成したいです。
どうかご教授お願い致します。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
例:
Range("A2") = "=B1+C1"
のようにすればできますが・・・
参考:
■5.3 セルへ文字列、数値、数式を書込む1
http://www.happy2-island.com/excelsmile/smile03/ …
参考URL:http://www.happy2-island.com/excelsmile/smile03/ …
No.3
- 回答日時:
#2です。
語読力が弱くて申し訳ないのですが、
>配列変数をエクセルにみたて
というのは
SUSHIKI(1,1)をA1と見立てて
SUSHIKI(26,10)をZ10と見立てるという意味でしょうか?
因みに
>Sheets("TEST2").Cells(1, 1).Resize(10, 26).Formula = SUSHIKI
をテストして見ましたが文字ではなく数式が入りました。
変数SUSHIKIに格納されているデータは間違いなく数式が入っていますでしょうか?
SUSHIKI = Range("TEST2!A1").Formula '数式格納
SUSHIKI = Range("TEST2!A1").Value '文字格納
再度確認願います。
No.2
- 回答日時:
こんにちは。
確認したい点がございます。
配列変数SUSHIKIに格納されているデータもしくは格納するコードが分かれば提示願います。
また、Offsetを使用したいというのは何らかの意味があってとの事でしょうか?
ただ数式を指定範囲に貼り付けたいのであれば
Sub TEST()
Sheets("TEST2").Select
Range("A1").Copy
Range("A1:Z10").PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
End Sub
で動作します。
補足をお待ちしております。
ご回答ありがとうございます。
コピー以外の方法で処理を行いたかったものでして。
数式も例のもの以外に、フラグによってループ処理の上で変更したりと
色々応用してみたかったんです。
配列変数をエクセルにみたて、
様々な数式を配列変数に挿入した場合には、
エクセルに一括して吐き出すことが可能なのかなと思いまして。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
教えて!gooグレードポイントがdポイントに変わります!
dアカウント連携を行っていただくと、グレードに応じて「dポイント」が進呈されるようになります。
-
エクセルVBA 配列からセルに「関数式」を一気代入したい
Visual Basic(VBA)
-
【VBA】配列に数式を仕込む方法(カンマのエスケープ方法)
Excel(エクセル)
-
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
4
ExcelVBAでデータを一括してセルに貼り付ける
Visual Basic(VBA)
-
5
VBA:日付を配列に入れ別セルに転記するとデータ型が変わる
Visual Basic(VBA)
-
6
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
7
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
8
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
9
VBAで文字列を数値に変換したい
Excel(エクセル)
-
10
(Excel VBA)and,orについて
Excel(エクセル)
-
11
VBA 配列数式的に一括してRangeを扱かえ…
その他(Microsoft Office)
-
12
エクセルのデータを自動的にwebブラウザ上のフォームに入力
その他(プログラミング・Web制作)
-
13
VBAで配列の計算
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
【C#】二次元配列へのcsvファイ...
-
5
Excelのセルの色指定をVBAから...
-
6
エクセルで、絶対値の平均を算...
-
7
Excel オートフィルタのリスト...
-
8
配列のSession格納、及び取得方...
-
9
チェックボックスの値を(1,0)...
-
10
【VBA】配列に数式を仕込む方法...
-
11
.NET - 配列変数を省略可能の引...
-
12
Excelのオートフィルタで抽出し...
-
13
16進数から2進数へ
-
14
ノーツのデータをVBScriptで取...
-
15
Split関数でLong配列に格納する...
-
16
VBAでの100万行以上のデータの...
-
17
EXCEL VBA 2次元配列に格納さ...
-
18
ExcelVBAの配列変数で一括でセ...
-
19
エクセルの行の削除を配列で高...
-
20
【VBA】ユーザーフォーム リス...
おすすめ情報
公式facebook
公式twitter