私はコンピュータ上のファイルから情報を引き出すVBAが書かれたExcelファイルを持っています。 Excelファイルはネットワークフォルダにあり、ネットワーク上の他のユーザーもExcelファイルを使用したいと考えています。しかし、私はVBA上のファイルパスをハードコーディングしています。したがって、別のユーザーがファイルを開くたびに、利用できないファイルを探します。VBA内のファイルパスをユーザー名で置き換えます。
これは私が変更したいパスです:
C:\Users\User1\Documents\The Market in\DATA FOR REPORTS.xlsx
パス上の唯一の違いは、ユーザーの名前を次のようになります。ユーザー1、ユーザー2、など
は、どのように私はVBAコードを書くことができますそれを開くにはWindowsのユーザー名とファイルパスのユーザー名を置き換えるためには?
私はワイルドカードを使用しようとしましたが、ENVIRON( "username")も使用しようとしましたが、成功しませんでした。
私は交換したい以下のコードは、何です:
Private Sub Workbook_Open()
Dim username As String
username = Environ("username")
Application.Visible = False
WelcomeForm.Show
Workbooks.Open ("C:\Users\&username&\Documents\The Market in\DATA FOR REPORTS.xlsx")
End Sub
はこのような何かを
'ENVIRON( "ユーザー名" ) 'はうまくいくはずです。どのように使用したのか、問題/エラーは何ですか? –
私はちょうど質問にそれを追加しました。ありがとうございました。 – franciscofcosta
これは正しい連結構文ではありません - "C:\ Users \&username&\ Documents' - 以下の答えを慎重に見てください – braX