SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 3755|回复: 4
打印 上一主题 下一主题

牛们请进!SAS合并单元格

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2013-2-3 11:08:22 | 只看该作者

牛们请进!SAS合并单元格

[code:3lflmopm]*测试数据集;
DATA TEST;
INPUT V1 $ V2 $;
CARDS;
A C
A C
A D
B E
B E
B F
B F
;[/code:3lflmopm]
需要在SAS数据集导成外部文件EXCEL时,将[color=#FF0000:3lflmopm]字段前后相邻值[/color:3lflmopm]相同的单元格合[color=#FF0000:3lflmopm]并成一个单元格[/color:3lflmopm]!并期望合并后的单元格能够上下居中,前后居前的位置。
希望在SAS环境下完成(或者可以调用VB等其它语言函数),不知道有没有哪位高人可以把它实现.....
[color=#00BF00:3lflmopm]注:主要期望实现的功能为合并单元格![/color:3lflmopm]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2013-2-4 04:58:01 | 只看该作者

Re: 牛们请进!SAS合并单元格

[code:3t7m83ml]
ods tagsets.excelxp file='d:\xxx.xls'style=statistical;
proc report data=test nowd spanrows
        style(column)=[just=left vjust=middle];
column V1 V2 ;
define V1-V2/order;
run;
ods tagsets.excelxp close;
[/code:3t7m83ml]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2013-2-5 18:20:02 | 只看该作者

Re: 牛们请进!SAS合并单元格

[quote="徐福贵":4oon90vf][code:4oon90vf]
ods tagsets.excelxp file='d:\xxx.xls'style=statistical;
proc report data=test nowd spanrows
style(column)=[just=left vjust=middle];
column V1 V2 ;
define V1-V2/order;
run;
ods tagsets.excelxp close;
[/code:4oon90vf][/quote:4oon90vf]
这几天比较忙都没上来看看!嘿嘿 <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) --> !非常谢谢这位热心徐大侠的回帖哈!基本功能都已经实现了,不过在遇到下边的情况时,结果有点差异!
DATA TEST;
INPUT V1 $ V2 $;
CARDS;
A C
A C
A D
B E
[color=#FF0000:4oon90vf]B D[/color:4oon90vf]
B E
B F
B F
;
EXCEL得到结果(V1=B时)应该是
行标------V1-------V2
1---------------------E
1.5
2---------------------D
2.5
3-----------B---------E
3.5
4----------------------F
4.5                        
5
注:行标只是为了表明单元格位置!不清楚这样的只是适合前后相邻值单元格合并的好不好实现.....
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2013-2-5 22:38:09 | 只看该作者

Re: 牛们请进!SAS合并单元格

To 先天性爱好者:
[code:1am9qwv8]
data test;
        set test;
        by V1 V2 notsorted;
        if first&#46;V1 then count = 0;
        if first&#46;V2 then count+1;

ods tagsets&#46;excelxp file='xxx&#46;xls' style=statistical;
proc report data=test nowd spanrows
        style(column)=&#91;vjust=middle&#93;;
        column V1 count V2;
        define count/order noprint;
        define V1-V2/order;
run;
ods _all_ close;
[/code:1am9qwv8]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2013-2-7 09:00:40 | 只看该作者

Re: 牛们请进!SAS合并单元格

嘿嘿!想不到这样就实现了.....看了下,也差不多了吧!非常感谢这位徐牛的指导... <!-- s:) --><img src="{SMILIES_PATH}/icon_smile.gif" alt=":)" title="Smile" /><!-- s:) -->
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-5-3 06:35 , Processed in 0.075039 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表