人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Excelのマクロに関する質問です。良い回答は、250ポイント差し上げます。
計算式の埋め込み処理のマクロで、
実行したら「'○○'」シングルクォーテーションが入ってしまいました。
実行結果は、
「=VLOOKUP('D5',機械設定!Q3:S300,2,FALSE)」

以下のような実行結果にしたいと思います。
「=VLOOKUP(D5,機械設定!Q3:S300,2,FALSE)」

※対象コードは、11行目になります。

--------------------------------------------------------------------------------------------------
1 Sub Nyuryoku()
2
3 Application.ScreenUpdating = False
4 Dim lastRowA As Long
5 Dim Z As Long
6 lastRowA = Range("B" & Rows.Count).End(xlUp).Row
7 For Z = 5 To lastRowA
8 If Range("B" & Z).Value <> "" Then
9 Range("A" & Z).Formula = "=ROW()-4"
10 Range("D" & Z).Formula = "=B" & Z & "&C" & Z & ""
11 Range("E" & Z).Formula = "=VLOOKUP(D" & Z & ",機械設定!R[-2]C[12]:R[295]C[14],2,FALSE)"
12 End If
13 Next Z
14 Application.ScreenUpdating = True
15
16 End Sub
---------------------------------------------------------------------------------------------------
どうか宜しくお願いします。

●質問者: anim130M
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:application as Excel NeXT sub
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Mook
●250ポイント ベストアンサー

原因はRC フォーマットとアドレスフォーマットを混在させたことによる

ものだたと思います。

Sub Nyuryoku()
 Application.ScreenUpdating = False
 Dim lastRowA As Long
 Dim Z As Long
 lastRowA = Range("B" & Rows.Count).End(xlUp).Row
 For Z = 5 To lastRowA
 If Range("B" & Z).Value <> "" Then
 Range("A" & Z).Formula = "=ROW()-4"
 Range("D" & Z).Formula = "=B" & Z & "&C" & Z & ""
 Range("E" & Z).FormulaR1C1 = "=VLOOKUP(RC[-1],機械設定!R[-2]C[12]:R[295]C[14],2,FALSE)"
 End If
 Next Z
 Application.ScreenUpdating = True
End Sub

どちらかのフォーマットで統一すれば解決すると思いますが、今回は RC フォート

で統一しました。

http://www.asahi-net.or.jp/~ef2o-inue/shiki/sub03_010_02.html

◎質問者からの返答

回答ありがとうございました。

フォーマットの統一が必要なんですね。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ