
VB6でファイルリネームツールを作成しています。
DriveListBox・DirListBox・FileListBox・TextBox*2・コマンドボタン*3を配置しています。
実行して、ドライブ・ディレクトリを選択して、FileListBoxに表示されいるファイルをコマンド2ボタンで全部Text2に表示させています。
そこで、text2からファイル名を直接編集して、コマンド3ボタンで編集したファイル名で保存したいのですが、どう記述すれば良いのでしょうか。
Text1とコマンド1の状態は、FileListboxでクリックしたファイルをText1に表示・編集して、コマンド1でファイル名変更できる状態です。
コマンド3のコードですと、
>Set fsofile = fso.GetFile(Dir1.Path & "\" & File1.FileName)
の行が、実行エラー53、ファイルが見つかりません。となります。
宜しくお願いします。
現在のコードです。
Private Sub Command1_Click()
Dim fso As New FileSystemObject
Set fsofile = fso.GetFile(Dir1.Path & "\" & File1.FileName)
fsofile.Name = Text1.Text
File1.Refresh
end sub
Private Sub Command2_Click()
Text2.Text = Clear
Dim fso As New FileSystemObject
For Each myFile In fso.GetFolder(Dir1.Path & "\" & File1.FileName).Files
Text2.Text = Text2.Text & myFile.Name & vbCrLf
Next
End Sub
Private Sub Command3_Click()
Dim fso As New FileSystemObject
Set fsofile = fso.GetFile(Dir1.Path & "\" & File1.FileName)
fsofile.Name = Text2.Text
File1.Refresh
End Sub
Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub
Private Sub Drive1_Change()
Dir1.Path = Drive1.Drive
End Sub
Private Sub File1_Click()
Text1.SetFocus
Text1.Text = File1.FileName
End Sub
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
Dir1.Path = App.Path
Drive1.Drive = App.Path
End Sub

No.1ベストアンサー
- 回答日時:
> >Set fsofile = fso.GetFile(Dir1.Path & "\" & File1.FileName)
> の行が、実行エラー53、ファイルが見つかりません。となります。
とのことなので、
直前の行とかで
Debug.Print Dir1.Path & "\" & File1.FileName
ってやってみてイミディエイティ ウィンドウになんて表示されるか確認してみてはどうでしょうか?
「ファイルが見つかりません」なので生成されたパス文字列が間違ってるんじゃないかって点を最初に疑ってみましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) エクセルVBA(実行時エラー438)の対処法を教えてもらえないでしょうか 3 2023/04/22 13:43
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) FileSearch2007に変わる構文について 1 2022/12/16 16:57
- Visual Basic(VBA) リストボックスに表示されたファイルを削除したい 1 2023/04/19 12:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/02/21 11:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ終了時にDOS窓を閉じるコ...
-
VBのMdDir関数について。
-
AccessVBAで実行時間を指定する...
-
make test って何をするための...
-
findstrでヒットした1行前の文...
-
BATファイル作成時の記述に...
-
ダブルクォーテーションのファ...
-
バッチファイルでディスク容量...
-
シェルの「:コマンドが見つか...
-
複数のフォルダを開くバッチフ...
-
大量のフォルダからひとつのフ...
-
binファイルを解凍したいの...
-
コマンドプロンプトのエラーに...
-
win10の「フォト」で、「次へ」...
-
これってパソコンの最適化が完...
-
テキストファイルで提出とは?
-
バッチ処理でファイルの中身を...
-
stable diffusionのインストー...
-
VBScriptでコマンドプロンプト...
-
公文書のxmlファイルの開き方が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ終了時にDOS窓を閉じるコ...
-
バッチファイル 文字列にスペ...
-
make test って何をするための...
-
シェルの「:コマンドが見つか...
-
コマンドプロンプトをクリック...
-
ftpコマンドを実行すると「425 ...
-
findstrでヒットした1行前の文...
-
ショートカットをデスクトップ...
-
バッチファイルを使ってテキス...
-
Pythonで単純にファイルを結合...
-
フォルダ、ファイル操作に最適...
-
ftpコマンド出力結果の取得
-
シェルスクリプト内のcdで、カ...
-
AccessVBAで実行時間を指定する...
-
powershellでlinuxのduコマンド...
-
SSH接続でwindowsサーバのコマ...
-
FTPの連続実行でフリーズする
-
コマンドプロンプトとCygwinの違い
-
Windowsのバッチ(bat)ファイル...
-
xCopyコマンドでネットワークご...
おすすめ情報