| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 546 人关注过本帖
标题:[求助]
只看楼主 加入收藏
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
 问题点数:0 回复次数:9 
[求助]
请各们帮帮忙,看看如下用word宏来完成,程序怎么写:
abab1
abab1
abab1
abab1
......

变成如下

abab1
abab1 #1+2=以下数3
abab3
abab3 #3+2=以下数5
abab5
abab5 #5+2=以下数7
abab7
abab7
.......

在abab1基数上查找替换,一直到文件的结尾.
谢谢各位了!!!!
搜索更多相关主题的帖子: word 
2005-11-26 21:57
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
Private Sub Command1_Click()
Text1 = Text1 & vbCrLf
Dim i As Integer
Dim a() As String
a = Split(Text1, vbCrLf)
For i = 0 To UBound(a) - 1
If i Mod 2 = 0 Then
a(i) = Mid(a(i), 1, Len(a(i)) - 1) & i + 1
Text2 = Text2 & a(i) & vbCrLf
Else
a(i) = Mid(a(i), 1, Len(a(i)) - 1) & i
Text2 = Text2 & a(i) & vbCrLf
End If
Next
End Sub



图片附件: 游客没有浏览图片的权限,请 登录注册



[此贴子已经被作者于2005-11-27 20:30:59编辑过]


快上课了……
2005-11-27 17:24
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
得分:0 

谢谢slore版主,但是不能在word里用宏完成,我想实现的是我下面的想法:

我在word中要处理很多字母加数字,比如“N.1”,当然有很多,要让它们变成有规则的数字,就像如下:
N.1 N.1 N.1 N.1 N.1 N.1
变成:
N.1 N.1 N.2 N.2 N.3 N.3
或者变成如下:
N.1 N.1 N.11 N.11 N.21 N.21
就是查找和替换的功能,N.1里的1是一个底数,必须有一个底数,底数加一个固定数递增。
它们是在原来的位置被替换的,不能加空格的

先查找到第一个和第二个N.1这两个是不变的,再往下查,查到第三个,把上一次查到的数1调过来加一个固定数(比如10),替换第三个和第四个,再往下查第五个和第六个,再把上一次的数也就是第三或第四的数调过来加固定数10替换,一真这样下去,一直到文件的结尾(字母是不变的,只有数字在递增)。
查找的这个N.1是在应用过程中会变的,或者是nmber1,或者是abab1,还有是那个固定数也是要变的,有的时候是68,有的时候是90,是不定的,要看这个文件怎么用。
原来我要用计算器加到好几千万,所以要用很长时间。你看一下我底下的这段小程序。

2005-11-27 20:27
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
另一个帖子里发过了

快上课了……
2005-11-27 20:32
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
得分:0 
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "abab1"
.Replacement.Text = "abab4"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
With Selection
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseStart
Else
.Collapse Direction:=wdCollapseEnd
End If
.Find.Execute Replace:=wdReplaceOne
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseEnd
Else
.Collapse Direction:=wdCollapseStart
End If
.Find.Execute
End With
With Selection
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseStart
Else
.Collapse Direction:=wdCollapseEnd
End If
.Find.Execute Replace:=wdReplaceOne
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseEnd
Else
.Collapse Direction:=wdCollapseStart
End If
.Find.Execute
End With
With Selection.Find
.Text = "abab1"
.Replacement.Text = "abab7"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
With Selection
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseStart
Else
.Collapse Direction:=wdCollapseEnd
End If
.Find.Execute Replace:=wdReplaceOne
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseEnd
Else
.Collapse Direction:=wdCollapseStart
End If
.Find.Execute
End With
With Selection
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseStart
Else
.Collapse Direction:=wdCollapseEnd
End If
.Find.Execute Replace:=wdReplaceOne
If .Find.Forward = True Then
.Collapse Direction:=wdCollapseEnd
Else
.Collapse Direction:=wdCollapseStart
End If
.Find.Execute
End With
#怎么实现自动变成abab4和下面的abab7,它们是加3所得,怎么让这个程序循环下去
2005-11-27 20:35
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
空格已经没了。。。我开始用了str转换i和i+1
发现我用的的 & 所以不用转,所以空格也就没了。

快上课了……
2005-11-27 20:36
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
得分:0 
帮我小弟减减减肥吧!!呵呵!!!!
2005-11-27 20:37
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
得分:0 

必须是完我上面写的程序走下去,我刚用了你发给我的另一个小程序,还是不行,因为我用的文件里面是ab=1,你的程序我不能去改,我现在刚开始学也改不了

2005-11-27 20:57
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
ab=1和abab1一样啊

快上课了……
2005-11-27 21:33
dulenilovefe
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2005-11-26
收藏
得分:0 

不一样的,你看一下我要做的吧!!你在宏里运行一下你写的程序,过程是错误的

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

…………

上面是我现在每天要处里的数据,下面是我处理好的,用计算器一个一个算出来的,哈哈!!!把上面的复制到 word文件里面,写一个宏文件,试一试,你可以编好给我吗?把word文件和宏全发过来我试一下,

Range("A1").Select

&page=1", _

Range("A1"))

&page=1_1"

Range("A3").Select

&page=2", _

Range("A3"))

&page=2_1"

Range("A5").Select

&page=1", _

Range("A5"))

&page=1_1"

Range("A7").Select

&page=3", _

Range("A7"))

&page=3_1"

Range("A9").Select

&page=4", _

Range("A9"))

&page=4_1"

Range("A11").Select

&page=5", _

Range("A11"))

&page=5_1"

Range("A13").Select

&page=6", _

Range("A13"))

&page=6_1"

Range("A15").Select

&page=7", _

Range("A15"))

&page=7_1"

2005-11-27 22:23
快速回复:[求助]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032726 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved