お世話になっております
excelで「今開いたシート名までのパス」を取りたいのですが、方法がわかりません
現在
For FileNo = 1 To .FoundFiles.Count(あるフォルダの中にある)
***************
For intNum = 1 To intSC(ファイルの中のシートを端から開いて作業する)
***************
というようにfor nextであるファイルのあるシートを指定して作業するようになっています
いったん、別のファイルを選択してからまたこの開いたシートに戻る必要があるため、この直前に開いたシートのパスが必要なのです
「ThisWorkbook.Path」などではコードが書いてあるファイルのパスになってしまいます
どうか教えていただけると大変助かります
宜しくお願いします
No.2
- 回答日時:
>別のファイルを選択してから
>またこの開いたシートに戻る必要があるため
>この直前に開いたシートのパスが必要なのです
この文言ではいくつか受け取り方がありますが、
それは無視して、パスの取得方法のための回答
●のコードを追加する
'-----------------------------------------
● Dim myBook As Workbook
For FileNo = 1 To .FoundFiles.Count
● Set myBook = Workbooks.Open(.FoundFiles(FileNo))
For intNum = 1 To intSC
************
'-------------------------------------------
開いたブックのパス: myBook.Path
開いたブックのフルパス: myBook.Path & "\" & myBook.Name
開いたブックの選択: myBook.Select
但し、このオブジェクト変数myBookをどこで使用するかで、
宣言場所が違ってくるのは言うまでもありません。
以上。
すいません
Workbooks.Open "myBook.Path & " \ " & myBook.Name"
とすると「型が一致していません」というエラーがでます
色々やってみたのですが、どうしてもできませんでした
そしてそこからシートを指定する方法がわかりませんでした
でも、ご回答いただきありがとうございました
理解が足りず申し訳ありません
No.3ベストアンサー
- 回答日時:
.FoundFiles.Countを使える人が、
>Workbooks.Open "myBook.Path & " \ " & myBook.Name"
こんな書き方をするとはちょと信じられませんが。。(^^;;;
という突っ込みは置いといて。。
myBook.PathとかmyBook.Nameは変数ですので(定数ではない)
””で囲む必要はありません。
¥ だけを囲みます。
Workbooks.Open myBook.Path & " \ " & myBook.Name
もしこれでエラーがでるようでしたら、質問者のコードを全て提示してください。
その方が解決が早いでしょう。
ありがとうございました
シートの選択もやっとなんとかできました
もっとスマートな書き方があるだろうとは思いましたが
とりあえず急ぎだったので今回はこれでよしとします
すぐに対応していただき、またご指摘いただき大変ありがとうございました
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Visual Basic(VBA) Excel ファイルを指定し、指定されたファイル内にシートを統合するVBA 8 2023/07/10 10:09
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
Excel マクロについての相談
-
別のシートを参照して計算する方法
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
VBA 最終行まで数式をコピーする
-
【ExcelVBA】全シートのセルの...
-
特定の文字を含むシートだけマ...
-
エクセルのマクロについて教え...
-
VBA 入力月で該当シートを選択...
-
一括印刷マクロ シート名を数字...
-
【ExcelVBA】動的にボタン、ボ...
-
VBA 存在しないシートを選...
-
同じ作業を複数のシートに実行...
-
ListViewの画面の更新
-
実行時エラー1004「Select メソ...
-
シートが保護されている状態で...
-
エクセルで通し番号を入れてチ...
-
【VBA】指定した検索条件に一致...
-
ユーザーフォームに入力したデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
XL:BeforeDoubleClickが動かない
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報