• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA 実行時エラー‘13’型が一致しまん)

エクセルVBA 実行時エラー‘13’型が一致しまん

このQ&Aのポイント
  • エクセルVBAの実行時エラー‘13’型が一致しません。
  • エクセルVBAで変数を設定しようとすると、実行時エラーになります。
  • 変数の宣言やデータ型の設定に問題があるようです。回避策が必要です。

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

  • ベストアンサー
  • pringlez
  • ベストアンサー率36% (598/1630)
回答No.1

>試しに Dim HIDUKE As String にすると、 >MMM = Mid(HIDUKE, 3, 3) の所で『実行時エラー‘13’型が一致しません。』 >となってしまいます。 ファイル名の文字列がDate型のわけはありませんからString型にします。それで正しいです。それでエラーになることはないはずです。単にあなたが「Stringにした」と思い込んでいるだけで、実際にはやっていないだけでしょう。 31MAR.xlsというファイル名で、以下のコードででエラーなく動くことを確認しました。もしもそれでもStringにしてもエラーが出るというのならエラーが出た際のコードを貼りましょう。もしくはファイル名が間違っているのかもしれませんが、とにかく正しく書けば必ず動きます。 Dim HIDUKE As String HIDUKE = Left(ThisWorkbook.Name, 5) MMM = Mid(HIDUKE, 3, 3) DD = Left(HIDUKE, 2) Set NYURYOKU = Workbooks(DD & MMM & ".xls").Worksheets("入力")

kasetsu
質問者

お礼

無事に動きました。 丁寧なご説明、ありがとうございました。助かりました。

その他の回答 (1)

回答No.2

>実行時エラー‘9’インデックスが有効範囲にありません。 Workbooks(DD & MMM & ".xls").Worksheets("入力") に該当するシートが存在しないってことです。あるいは、存在しないと誤認しているかです。 【回避策】前者であれば、実際に存在する名前を指定すれば回避できます。 後者であれば http://excelshogikan.com/tips/tips043.html

関連するQ&A