• ベストアンサー

エクセルVBAのエラー

お世話になります。 A列に2014/12/29のように日付がはいってます。 G2に=TEXT(SUBSTITUTE(RC[-6]," / ",""),"yyyymm")と 手入力すると問題なく20141229と表示されます。 しかし、 VBAでセルG2に Cells(2, 7) = "=TEXT(SUBSTITUTE(RC[-6]," / ",""),"yyyymm")" と入力して実行させようとすると、 コンパイルエラー 修正候補:ステートメントの最後 と表示されて実行できないのですが なぜでしょうか? 宜しくお願い致します。 バージョン2010です

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

その数式でSUBSTITUTE関数は機能していないので、数式は =TEXT(A2,"yyyymm") としますが、ご相談はそこじゃなくて。 開発タブから新しいマクロの記録を開始、所定のセルに =TEXT(A2,"yyyymm") と数式を記入する動作をマクロに録ると、正しいマクロの書き振りは ActiveCell.FormulaR1C1 = "=TEXT(RC[-6],""yyyymm"")" のようにすべきだと教えてくれます。もちろんactivecellの部分を、ご自分の正しいマクロに細工してご利用ください。

tackty
質問者

お礼

keithin様 お世話になります。 回答どおりのことをしたら問題が 解決しました。 助かりました。 ありがとうございます。

関連するQ&A