Office中国论坛/Access中国论坛

标题: 请教:excel自动换行时自动插入回车,请高手赐教,万分感谢! [打印本页]

作者: Derek@BJ    时间: 2008-10-31 08:24
标题: 请教:excel自动换行时自动插入回车,请高手赐教,万分感谢!
严格来说这是word的问题,但是其中有一个问题也许能通过excel解决,所以向诸位请教,非常感谢!

我需要的是:

是否可以在excel中,在选中自动换行时,判断单元格的宽度,并在每个换行处插入一个回车,并将字符不足的空白部分填充足够的空格?

如:
________________________
|  这是一个 | 这是第二 | 其他     |
|  范例        | 个范例    |             |
----------------------------------------
需要在“个”和“二”后插入回车,在“范例”和“他”后插入空格填满。

为什么会有这么奇怪的要求?因为.... (以下来龙去脉,只要能解决问题,都感谢至极 )

请教:在word中对选定范围查找替换(VBA)、等距空格替换Tab,万分感谢!

工作需要如下两个功能,奈何自己完全不懂VBA,只能通过录制和修改来创建最简单的宏,尝试了很多办法还是没法解决,希望高手能赐教,万分感谢!!

一:将选定的若干段落转换为如下格式:每段的第一句文字前添加4个空格+2个中横线+1个空格;每个句末以回车分行;除每段第一个句子外的所有句子,在文字前添加7个空格。例如:

原文:

    何为沽空 ...

    沽空是指预期未来行情下跌,将股票按目前价格卖出,待行情下跌后买进,获利差价利润,即:高卖低买。具体的操作方法有两种,1)首先要支付一定的利息从别人那儿借到股票然后卖出去。2)根本先卖,然后在规定的一段时间内借到股票。后者称裸沽空。试想在买卖双方的较量中,买方要拿出真金白银,即便是有融资的可能也得拿出至少20%-30%的资金,而沽空者则需付出利息,或只要有胆吆喝一声。在大跌市中很多时候还没等到要出去借股票,股票已经跌到有丰厚的利润,那时只要低位买进即可。无本生意,无人可敌。雷曼兄弟破产后目前裸沽空在美国被禁。美国一度禁止对大多数金融机构普通意义上的沽空,但现在已经恢复,因此十月八日和九日美国的股市又血流成河,直到全球联联手救援活动启动才稍稍喘定。
    何为信贷违约掉期 ...

    是一种贷款违约保险。它出现的本义为了让银行转移信贷风险。A 公司向 B 银行借款,银行赚取利息,但也有风险。约九十年代中为银行贷款提供保险的产品出现了,名为信贷违约掉期(Credit Default Swap,简称 CDS)


转换后:(从word中copy过来,因此是基于word中的宽度进行分行的,每句前有7个空格)

    -- 何为沽空
       沽空是指预期未来行情下跌,将股票按目前价格卖出,待行情下跌后买进,获利差价利润,即:
       高卖低买。具体的操作方法有两种,1)首先要支付一定的利息从别人那儿借到股票然后卖出去。
       2)根本先卖,然后在规定的一段时间内借到股票。后者称裸沽空。试想在买卖双方的较量中,买
       方要拿出真金白银,即便是有融资的可能也得拿出至少20%-30%的资金,而沽空者则需付出利
       息,或只要有胆吆喝一声。在大跌市中很多时候还没等到要出去借股票,股票已经跌到有丰厚的
       利润,那时只要低位买进即可。无本生意,无人可敌。雷曼兄弟破产后目前裸沽空在美国被禁。
       美国一度禁止对大多数金融机构普通意义上的沽空,但现在已经恢复,因此十月八日和九日美国
       的股市又血流成河,直到全球联联手救援活动启动才稍稍喘定。
    -- 何为信贷违约掉期
    -- 是一种贷款违约保险。它出现的本义为了让银行转移信贷风险。A 公司向 B 银行借款,银行赚
       取利息,但也有风险。约九十年代中为银行贷款提供保险的产品出现了,名为信贷违约掉期
       (Credit Default Swap,简称 CDS)。


二:将表格(word/excel表格均有/均可)转换为文字并对齐,但不能使用tab键,只能使用空格键(系统要求,没有办法),如:

原文:(请查看附件的word文档中的表格)


部门营收                        
机身系统    $484.8    $434.3    11.6%    $1,470.2    $1,329.2    10.6%
推进系统    $291.5    $278.9    4.5%    $863.1    $798.5    8.1%
机翼系统    $246.8    $251.5    (1.9%)    $773.5    $738.1    4.8%
其他所有部门    $4.1    $2.8    46.4%    $18.9    $14.6    29.5%
部门营收总额    $1,027.2    $967.5    6.2%    $3,125.7    $2,880.4    8.5%

转换后:(以空格键隔开对齐)

部门营收
机身系统            $484.8     $434.3    11.6%     $1,470.2   $1,329.2   10.6%
推进系统            $291.5     $278.9    4.5%      $863.1     $798.5     8.1%
机翼系统            $246.8     $251.5   (1.9%)     $773.5     $738.1     4.8%
其他所有部门         $4.1       $2.8      46.4%     $18.9      $14.6      29.5%
部门营收总额         $1,027.2   $967.5    6.2%      $3,125.7   $2,880.4   8.5%


这两个问题困扰了我很久,但是想了很多办法也没有解决。

第一个问题通过如下步骤录制宏部分解决:

1、删除所有4个空格(查找-替换);
2、将所有的2个回车替换为1个回车(删除多余行);
3、将所有一个回车替换为一个回车加4个空格+2个中横线+1个空格("^p"==>>"^p    -- ");
4、将光标移至第二行,
5、添加7个空格,鼠标右移一个字符(否则在段落之间会出问题),将光标移动至句末,添加1个回车(^p);
6、重复5.

但是我不知如何控制这些步骤使其在一个文档中只针对选定的段落运行。目前采用的是最笨的办法:1、2、3、全文运行,5重复150次(笨到将代码粘贴150遍),这样每次新开一个文档,将需要做成如此格式的段落粘贴入新文档,一次可处理150行(通常不需要这么多),再复制粘贴回原文档。这样做最大的问题不但麻烦,而且复制粘贴增大了出错的机会。

第二个问题我一筹莫展。在网上找了很久用等距离空格替换tab的方法,有类似TabConvertSpa之类的软件,但是处理中文都成了乱码。或者,是否可以在excel中,在选中自动换行时,判断单元格的宽度,并在每个换行处插入一个回车,并将字符不足填充单元格时添加等量空格填充完毕?

附件是这两个问题的示意。

恳请大侠帮忙,万分感谢!我在北京,因此,如果您在北京,愿大餐重谢   [:20][:20]




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3