今現在、作成中のマクロで、以下のようにしてフォルダのパスを指定して、その後の処理を実装しています。
VBA
1Const strDefaultPath As String = "パスの指定"
それを、Excelのセル上に記載したパスをstrDefaultPathの値に代入し、マクロのパスをいじらなくても、Excel上にフォルダのパスを指定すれば正常に動作するようにしたいのですが、どのようにソースを修正すれば良いでしょうか。
今回の場合、フォルダのパスを指定するのはD1セルとします。
以下のように書いて見てもうまくできませんでした
VBA
1 Dim strDefaultPath As Variant 2 strDefaultPath = Range("D1").Value
パスを指定したい場所の参考画像(この画像のD1:F1の位置でパスを指定)
申し訳ありませんが、宜しくお願いします。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/27 16:29
2020/09/27 17:01
2020/09/27 17:04
2020/09/28 00:10
回答1件
0
ベストアンサー
VBA
1wsTo.cslls(1,4).Value 2
パスの最後は\マーク必要だから...
あとはセル結合の場合先頭のセルじゃないと値取れない。
セル接合が"D1:D4"なら取得できるが"B1:D3"とかなら取れない
追記
多分私しかこれ答えられないよ?
多分構文エラー起きているでしょう
あとパス("C1"の値)は必ず""で終わる事!
○"c:\test"
×"c:\test"
VBA
123行目これを消す 2' Const strDefaultPath As String = "パスを指定する" 3新たに 4' Dim varDefaultPath As Variant
変数名の変更
VBA
133行目 2 'strFromXMLFileName = Dir(strDefaultPath & "*.xls") 元はこっち 3 strFromXMLFileName = Dir(varDefaultPath & "*.xls")
変数名の変更
VBA
139行目 2 'Set wbFrom = Workbooks.Open(strDefaultPath & strFromXMLFileName) 元はこっち 3 Set wbFrom = Workbooks.Open(varDefaultPath & strFromXMLFileName)
投稿2020/09/27 22:40
編集2020/09/28 04:39総合スコア2506
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/28 04:03
2020/09/28 04:11
2020/09/28 04:32
2020/09/28 04:52 編集
2020/09/28 11:07
2020/09/28 16:27
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。