[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『エラーがでて困っています』(ぷ)
If Fname = False Then Exit Sub Else For Each x In Fname Workbooks.Open Filename:=x Next End If End Sub
複数のファイルを開きたいのですが、
このように設定すると「型が一致しません」とのエラーがでます。
If Fname = False Then Exit Sub この部分を記述しないと上手くいくのですが、 何が原因なのか分かりません。
よろしくお願いします。
> 何が原因なのか分かりません。
> Fname=application.getopenfilename(multiselect:=yes)
> multiselect:=yes の yes という変数は変ですね。そこは 定数 True になおしてみたらどうですか?
Dim Fname As Variant Dim x As Variant Fname = Application.GetOpenFilename(MultiSelect:=True) If Fname = False Then Exit Sub Else (以下省略)
(kanabun)
If Fname = False Then でエラーにならずにダイアログを閉じることができるのですが、
逆にファイルを選択すると
「型が一致しません」と表示されてファイルを開くことができません。
If Fname = False Then の記述を削除すると開くことができるのですが。。。
よろしくお願いします。
application.getopenfilename multiselect Exit Sub で全文検索してみました。
こちらのスレで、MARBINさんが使って居られるようです。 [[20061016113628]]『多数のエクセルファイルの印刷』(kei) 参考になさってはいかがでしょう?
(HANA)
> 逆にファイルを選択すると「型が一致しません」と表示されて
なるほど、ファイルを選択すると Fname に 文字列の配列が入るから、 文字列は False のようなBool型の値との比較はできない、ので エラーになる わけですね。 こうしてみたら、どうでしょう
Dim Fname As Variant Dim x As Variant Fname = Application.GetOpenFilename( _ "Excel Book,*.xls", MultiSelect:=True) If VarType(Fname) = vbBoolean Then Exit Sub Else For Each x In Fname Workbooks.Open Filename:=x Next End If
(kanabun)
HANAさんに教えていただいたスレで無事にマクロを組むことができ
kanabunさんのおかげで何が原因だったのか理解しました。
お二人とも、丁寧に教えていただいて本当にありがとうございました。
助かりました!!!
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.