我一直在我們的SharePoint(.xlsx)格式模板文件,與活躍在一個主文件夾,並在該主文件夾中的所有舊版本移到一個存檔文件夾。我按日期標記(yyyymmdd),然後爲每個更新標記「模板」,例如20161206模板。使用VBA來打開和保存在線動態名文件
我知道我可以使用VBA中的Workbooks.Open(「http://www.website.com/」)函數來打開文件,但我不確定如何從Internet打開動態命名文件。
我想的是一樣的東西:
Sub OpenFromInternet()
Dim DateChk As String
DateChk = 'Not sure
Workbooks.Open "http://www.website.com/" &DateChk& " Template.xlsx"
End Sub
的DateChk是我一直卡住...我不知道是什麼,即使是要去這個問題的有效途徑。考慮到我只在主文件夾中保留一個文件,並在其中包含日期,我爲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
我覺得這是非常低效的,但解決這個問題......我想從有脫身第二個文件必須被維護和使用(打開,關閉)。
任何幫助來規避這個第二個工作簿,將不勝感激。