VBAにて下記質問があります。
複数の質問を連続して投稿するのもどうかと思い、
不慣れなもので、1投稿で2種類の質問を記載いたしましたが、
迷惑等になるのであれば、削除後複数投稿にて再度投稿したいと思いますので、遠慮なくご指摘下さい。
さて、本文ですが、
1.VBAにてExcelのあるセルに数式をセットしたいのですが、数式内にダブルコーテーションがある為、上手くセットできません。
2.VBAでRange関数のパラメータを可変にしたい。
1について、
セットしたい数式
=IF(ISERROR(VLOOKUP(H23,ini!B36:D401,3))=TRUE,"",IF(VLOOKUP(H23,ini!B36:D401,3)=0,"",VLOOKUP(H23,ini!B36:D401,3)))
セットしたいセルをH44とした場合、単純に
.Range("H44").Value = "=IF(ISERROR(VLOOKUP(H23,ini!B36:D401,3))=TRUE,"",IF(VLOOKUP(H23,ini!B36:D401,3)=0,"",VLOOKUP(H23,ini!B36:D401,3)))"
このように書いてエラーになってしまいます。
ダブルコーテーションがあるので当然だとは思うのですが、
回避の仕方がわかりません。
また、2についてですが、
「ワークシートに書かれた値をRangeのパラメータとして代入したい。」
仮にSheet1のA2のセルにA~Fまでのいづれかの値が入るものとする。
Range関数の列の指定はA2の値を参照し、代入したい。
A2の値:C
worksheets("sheet1").Range("〇1”).Value
〇にCが入るようにしたい。
当然、A2がFになったらFが代入されるようにしたい。
色々検索し、調べてみたのですが上手く見つけられませんでした。
VBA初心者である為、上記説明が分かりづらいかもしれませんが、
分かる方おりましたら、ご教授の程、よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
ダブルコーテーションを表示するときには、もうひとつダブルコーテーションを付けてやります。
「"」を表示するときは、「""」と2つにするということ。
なので、質問の件は、「""""」と4つにすればいいわけです。
.Range("H44").Value = "=IF(ISERROR(VLOOKUP(H23,ini!B36:D401,3))=TRUE,"""",IF(VLOOKUP(H23,ini!B36:D401,3)=0,"""",VLOOKUP(H23,ini!B36:D401,3)))"
-----------------------------------------------------
●質問2.
Range(Range("A2").Value & "1").Value
または
Cells(1, Range("A2").Value).Value
以上。
できました!ありがとうございます。
Rangeの中にRangeを記述するという発想がありませんでした。
ありがとうございました。
No.2
- 回答日時:
(1)
Sub test01()
Range("A1").Value = "=IF(B1="""","""",C1)"
Range("A2").Formula = "=IF(B1="""","""",C1)"
End Sub
(2)
Sub test02()
x = "C"
MsgBox Worksheets("sheet1").Range(x & "1").Value
End Sub
他にも実質同じにするやり方はあるが。
ダブルコートはダブルコートでくくればよいという事ですね。ありがとうございます。
.valueでも.Formulaでもどちらでも可と言う事ですよね。
迅速な回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
見学に行くとしたら【天国】と【地獄】どっち?
みなさんは、一度だけ見学に行けるとしたら【天国】と【地獄】どちらに行きたいですか? 理由も聞きたいです。
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
みんなの【マイ・ベスト積読2024】を教えてください。
積読、ついついしちゃいませんか?そこでみなさんの 「2024年に買ったベスト積読」を聞きたいです。
-
洋服何着持ってますか?
洋服を減らそうと思っているのですが、何着くらいが相場なのかわかりません。
-
【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
【お題】追い込まれた犯人が咄嗟に言った一言とは?
-
VBAでセル入力の数式に変数を用いたい
Excel(エクセル)
-
ダブルコーテーションでアンドをはさむ
Excel(エクセル)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
-
4
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
5
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
6
vba formulaの中での変数の扱い
Ruby
-
7
オートフィルターをかけ、#N/A以外で絞込みするVBA記述をご教示ください
Excel(エクセル)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
10
VBAで変数に関数式の結果をセットする場合
Excel(エクセル)
-
11
エクセルVBA 配列からセルに「関数式」を一気代入したい
Visual Basic(VBA)
-
12
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
13
VBAでExcel関数入力時のシングルクォーテーションについて
Visual Basic(VBA)
-
14
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
15
別ファイルを開かず、INDIRECT関数を使用せずに、別ファイルのデータを求めたい
Excel(エクセル)
-
16
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
17
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
18
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
19
エクセルVBAでオートフィルター最上行を取得するには
Excel(エクセル)
-
20
VBAで文字列を数値に変換したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・【大喜利】【投稿~1/31】『寿司』がテーマの本のタイトル
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでダブルコーテーション入り...
-
EXCEL/VBA 変数の値をクリップ...
-
エラーの意味は? Lvalue req...
-
jsp~jspにhiddenを使って変数...
-
C言語 アロー演算子について質...
-
コマンドプロンプト バッチ|結...
-
Variant型で宣言してるのにEmpt...
-
Accessコンボボックスにレコー...
-
Serialize(CArchive& ar)にて
-
整数xxxが大き過ぎますというエ...
-
stdpicture型の変数に、、
-
JavaScriptをURLから直接実行し...
-
変数宣言と初期値代入の場所に...
-
DataTableの値を変数に代入したい
-
[VBS]変数を定数に変換する方法...
-
プログラミングで変数と関数の...
-
vba 最大値 条件分岐
-
テキストボックスの値を変数に...
-
java 乗算をシフト演算と加算を...
-
【VBA】複合代入演算子
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでダブルコーテーション入り...
-
エラーの意味は? Lvalue req...
-
jsp~jspにhiddenを使って変数...
-
EXCEL/VBA 変数の値をクリップ...
-
[VBS]変数を定数に変換する方法...
-
Variant型で宣言してるのにEmpt...
-
テキストボックスの値を変数に...
-
java 乗算をシフト演算と加算を...
-
整数xxxが大き過ぎますというエ...
-
C言語 アロー演算子について質...
-
processing エラーで、 "cannot...
-
gridViewの行選択解除
-
C言語 列挙型(enum型)変数について
-
vba 最大値 条件分岐
-
datagridviewに行...
-
プログラミングで変数と関数の...
-
stdpicture型の変数に、、
-
JavaScriptをURLから直接実行し...
-
Accessコンボボックスにレコー...
-
変数にオフセットが付いている...
おすすめ情報