0
それぞれのファイルをSharePointに数百個アップロードしようとしていますが、残念ながらSharePointでは「%」のような特殊文字は使用できません。サブフォルダ内のファイル名をVBAで変更する
私はこれまでのところ私が持っているものなど、自動的に各サブフォルダに移動して、このような「%」、「#」などのファイル内に含まれる任意の特殊文字を置き換えることができますVBAコードを使用するをしようとしている
次のとおりです。
Sub ChangeFileName()
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set Folder = objFSO.GetFolder("C:\Users\Documents\TEST\Subfolder")
'Currently the way I have it requires me to change my path a few hundred times
For Each File In Folder.Files
sNewFile = File.Name
sNewFile = Replace(sNewFile, "%", "_")
sNewFile = Replace(sNewFile, "#", "_")
'^and so on`
If (sNewFile <> File.Name) Then
File.Move (File.ParentFolder + "\" + sNewFile)
End If
Next
End Sub
しかし上記のスクリプトのために、あなたは特定のサブフォルダパスを必要としています。サブフォルダ内のファイルの特殊文字を自動的に置き換える方法があるかどうかわかりません。 ExcelワークシートのA列に、特定のサブフォルダのパスをすべてペーストすることもできます。
ありがとうございました!
が見るこのコードを使用します。https://stackoverflow.com/questions/22645347/loop-through-all-subfolders-using-vba –
私が試したにそれを微調整しますそれは私の問題だと私は正確にどこに2つのスクリプトをマージするか分からないと思う。私は "For Each File in Folder.Files"の下で、 "sNewFile = File。Name"と "sNewFile = Replace(sNewFile、"% "、" _ ")を追加するだけですが、動作しません。 あなたが投稿したリンクのコードについては、「サブ」が始まる前に最初の部分のサブ名とエンドサブを持たないことに気付きました。 – user8087933