每周我输出一个yyyymmdd_report.xls
工作簿,其中包含多个工作表,其中包含我在文件名中的宏日期。如果我手动打开此工作簿,以下VBS脚本正常工作,以自动调整列:SAS ODS tagsets.excelxp:在SAS中调用vbscript的自动填充列宽度
Sub AutoFitAll()
Application.ScreenUpdating = False
Dim wkSt As String
Dim wkBk As Worksheet
wkSt = ActiveSheet.Name
For Each wkBk In ActiveWorkbook.Worksheets
On Error Resume Next
wkBk.Activate
Cells.EntireColumn.AutoFit
Next wkBk
Sheets(wkSt).Select
Application.ScreenUpdating = True
End Sub
有什么办法,我可以把这个成某种内部SAS调用的地方,我不必手动执行此操作?我在网上找到的文档似乎有点太复杂,我的需求。逻辑是:
1. Point to/open output report .xls file (maybe some command/DDE method?)
2. Run vbs script above
3. Re-save the file
我运行SAS V9.4,并有2010年的MSOffice
试试这个:http://www2.sas.com/proceedings/sugi25/25/cc/25p098.pdf –
谢谢,@RobertSoszyński。这篇论文并没有说明'Macro1'是如何存储的,究竟是什么 - 我假设它将包含一个类似于上面的宏。我会将文本保存在'.vbs'文件中并调用它吗?这就是我困惑的地方。 – Foxer
根据您的报告的复杂程度,查看可以自动实施并避免此步骤的ODS Excel。 – Reeza