-1
長話短說。我沒有SAS圖表,需要在國家級別的excel中生成圖表。所以52個圖表(包括哥倫比亞特區和波多黎各)。Excel VBA循環遍歷表格來定義宏變量
所有需要的圖表中的數據都是在一個名爲像這樣的.csv文件lr_hpi_ & state..csv
,我需要做的就是反覆打開每個.csv文件,將數據複製並粘貼到圖表模板。
我在圖表模板工作簿中創建了一個名爲states的工作表,如下所示。
id state
1 AK
2 AL
3 AR
4 AZ
5 CA
我該如何去循環狀態表來一次獲取狀態字符串來定義一個宏變量?我想我可以使用循環計數器來定義一個名爲i的變量,然後將i連接到狀態表的「B」列&「&」。
只是無法弄清楚語法。
謝謝。
VBA代碼我有一個稍微修改的記錄宏。 VBA不是我的母語。
子stateloop()
Dim i As Integer
Dim state As String
state = "AK"
Application.DisplayAlerts = False
Workbooks.Open Filename:= _
"\\sac-psas-02\pm\ma\scott\OW\hpi trend pci outlier removal\lr_hpi_" & state & ".csv"
Range("B2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("lr_hpi_template.xlsm").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Windows("lr_hpi_" & state & ".csv").Activate
ActiveWorkbook.Saved = True
ActiveWindow.Close
ChDir "\\sac-psas-02\pm\ma\scott\OW\hpi trend pci outlier removal"
ActiveWorkbook.SaveAs Filename:= _
"\\sac-psas-02\pm\ma\scott\OW\hpi trend pci outlier removal\lr_hpi_" & state & ".xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
ActiveWindow.Close
Application.Quit
ActiveWorkbooks.Close False
末次
完美的作品。謝謝您的幫助。 – user3529091 2014-10-04 22:35:39