我正在使用以下方法自动将数据集从 SAS 导出到 Excel ODS ExcelXP
:
PURCHASE_ annual_ Minimum_
Obs APR fee Cash_Advance
1 23.45% NONE $10
2 23.45% NONE $10
3 23.45% NONE $10
4 18.45% NONE $10
5 18.45% NONE $10
6 18.45% NONE $10
7 23.45% NONE $10
8 23.45% NONE $10
9 23.45% NONE $10
10 23.45% $0
11 23.45% $0
12 23.45% $0
在 SAS 中,列被格式化为文本,我希望将所有列作为文本导入 Excel。我使用以下代码创建文件PROC REPORT
:
ods tagsets.ExcelXP path="H:/path" file="file.xls" style=myStyle
options(frozen_headers='yes' WrapText='no'
embedded_titles='yes' suppress_bylines='yes'
sheet_interval='none' sheet_label=' '
sheet_name='Solicited'
width_points='1' width_fudge='1'
absolute_column_width='100' autofit_height='yes'
zoom='100');
title1;
proc report data=testing2 nowd;
column purchase_APR annual_fee minimum_cash_advance;
define purchase_APR / display style(column)={tagattr='format:@'} 'PURCHASE_APR';
define annual_fee / display style(column)={tagattr='format:@'} 'ANNUAL_FEE';
define minimum_cash_advance / display style(column)={tagattr='format:@'} 'MINIMUM_CASH_ADVANCE';
run;
ods tagsets.ExcelXP close;
但是,当打开 Excel 文件时,文本字段已以某种方式分别从23.45%
、$0
和$10
(text)更改为0.2345
、0
和10
(text)。
如何让 Excel 中的输出与 SAS 中的数据集一样?
我尝试使用特定格式使它们看起来相同(即tagattr='format:0.00%'
等),但 Excel 中的输出是数字而不是文本格式。