テンプレートファイルをSharePoint(.xlsx)に保存し、アクティブフォルダをメインフォルダに保存し、すべての古いバージョンをメインフォルダのアーカイブフォルダに移動します。私は日付(yyyymmdd)でラベル付けし、次に各テンプレートに対して「テンプレート」を付けます。 20161206テンプレート。VBAを使用してオンラインのダイナミック名ファイルを開いて保存する
VBAでWorkbooks.Open( "http://www.website.com/")関数を使用してファイルを開くことができますが、インターネットから動的な名前付きファイルを開く方法がわかりません。
私のようなものを考えていた:
Sub OpenFromInternet()
Dim DateChk As String
DateChk = 'Not sure
Workbooks.Open "http://www.website.com/" &DateChk& " Template.xlsx"
End Sub
DateChkは、私が立ち往生されています...私もこの問題について行くの効率的な方法だろうかわかりません。私は1つのファイルをメインフォルダ内に日付を入れておくだけで、DateChkのワイルドカード(アスタリスク)を試してみましたが、動作しませんでした。
どのような入力は、そのDateChkを意味を持つようにする方法を理解することに感謝します。
編集01:このコードをしようと
:
Sub OpenFromInternet()
Dim wbk As Workbook
Set wbk = Workbooks("http://www.website.com/Update Log.xlsx")
Dim LR As Long
LR = Cells(wbk.Sheets("Sheet1").Rows.Count, 1).End(xlUp).Row
Dim DateChk As String
DateChk = Workbooks("http://www.website.com/Update Log.xlsx").Sheets("Sheet1").Range("A" & LR).Value
Workbooks.Open "http://www.website.com/" & DateChk & " Template.xlsx"
End Sub
私は取得しています問題は外の添字オンラインワークブック(実行時エラー9を、定義しようとに関連しています範囲)。私は更新するために別のファイルを持たなければならないと思っていましたが、他の人よりも保守が簡単だと思います。
まだこれを処理しています。
編集02:
私が働くこのコードを持っている:
Sub OpenFromInternet()
Workbooks.Open ("http://www.website.com/Update Log.xlsx")
Dim LR As Long
LR = Cells(Sheets("Sheet1").Rows.Count, 1).End(xlUp).Row
Dim DateChk As String
DateChk = Sheets("Sheet1").Range("A" & LR).Value
Workbooks("Update Log.xlsx").Close SaveChanges:=False
Workbooks.Open "http://www.website.com/" & DateChk & " Template.xlsx"
End Sub
私はそれはかなり非効率的だと感じますが、問題を解決し...私は離れたから取得したいのですが2つ目のファイルを維持して使用する必要があります(オープン、クローズ)。
この2番目のワークブックを回避する助けがあれば幸いです。