入力ボックスが繰り返しポップアップして止まらない。
下記コードでファイル名の変更をしたいのですが、変更前の文字を入力ボックスにするにはどう変えたら良いかおわかりの方教えてください。
Sub ファイル名変換2()
Dim FileP As String
'フォルダ選択のダイアログボックスを開く
Application.FileDialog(msoFileDialogFolderPicker).Show
'選択したフォルダのパス名を取得
FileP = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1)
'ファイル名の変換
Dim FileA As String
'選んだフォルダの拡張子xlsを含むファイルを返す
FileA = Dir(FileP & "\*.xls*")
'フォルダ内のファイルがなくなるまで繰り返す
Do While FileA <> ""
'ファイル名の変換
Dim Str1 As String, Str2 As String
'変換前の対象文字列
Str1 = InputBox("変更前を入力", "ファイル名変更", "")'←任意で変える部分
'変換後の文字列
Str2 = "" '←任意で変える部分
'各ファイルのStr1部分をStr2に変換する
Name FileP & "\" & FileA As (Replace(FileP & "\" & FileA, Str1, Str2))
'Dirの指定をなくす
FileA = Dir()
Loop
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
フォルダの.xls*ファイルすべてをリネームする処理だと思いますが
Replace(FileP & "\" & FileA, Str1, Str2)
>変更前の文字を入力ボックスにするにはどう変えたら良いか
なっているように思いますが?
ファイル名すべてをリネームしたいのでしょうか?
一律に文字を変更するのなら、
Str1 = InputBox("変更前を入力", "ファイル名変更", "")'←任意で変える部分 と 変換後の文字列
Str2 = "" '←任意で変える部分 を Do While FileA <> ""の前にすれば良いと思います。
気になるのは、ダイアログ、InputBox でのキャンセル処理
キャンセル処理の仕方を聞きたいのかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ファイル名の右側を変更したい ファイル名:「1001日別売上」の左側へ「2022」を追加し、「202 6 2022/10/14 10:03
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
家電製品の電力周波数を変える機械
-
緯度、経度の 10進法と 60進法...
-
エクセルVBAの自動変換機能?
-
なぜ通信には16進数文字列が使...
-
UTF8→ShiftJISに変換したいです!
-
変換中の文字を表示させず、IME...
-
VB6からVB2010への変換について
-
Python画像処理について
-
ASP.NET SJIS→UTF-8文字コード...
-
VB6で10進数を32進数に変換する...
-
VS2003→VS2005へ変換 メール送...
-
逆コンパイルと逆アセンブルの...
-
C#のピクチャボックスにCLIのHB...
-
C#で漢字→ローマ字を変換
-
C++からCへのソース変換について
-
VisualBasicをC++に変換する方...
-
FFTプログラム(1次元)を使っ...
-
PIC16F88のAN4のアナログ/デジ...
-
MATLABのMATファイル をC言語...
-
VBA 置き換え後元に戻したい時
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
緯度、経度の 10進法と 60進法...
-
家電製品の電力周波数を変える機械
-
Mac 乗数の入力方法
-
3のつく数字と3の倍数のみを表...
-
エクセルVBAの自動変換機能?
-
C++からCへのソース変換について
-
C/C++→JAVAに変換するツール
-
分を時間に変換するプログラム
-
なぜ通信には16進数文字列が使...
-
エクセルのvbaで検索ボタンを作る
-
php
-
c++でmatからvectorへの変換の...
-
10進数をBCDに変換する方法
-
VB6からVB2010への変換について
-
C#でのpngからbmpへの変換について
-
VB 6 を VS 2012に変換するには?
-
bitmapクラスをiconクラスに変...
-
UTF8→ShiftJISに変換したいです!
-
VB6で10進数を32進数に変換する...
-
逆コンパイルと逆アセンブルの...
おすすめ情報