ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1646|回复: 4

千辛万苦编好了程序,不能运行.斑竹帮我......

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-8-12 17:21 | 显示全部楼层 |阅读模式

斑竹,按你的程序改了一下,千辛万苦编好了,运行不了,说是禁用宏了,看它的帮助也不知道该怎么处理?斑竹帮帮我.另外也帮我看看程序有没有问题,昨天到今天看了两天帮助了,我这是第一次编写word中的程序,照猫画虎还不得要领,请斑竹千万帮帮我.

附上数据文档处理后要求的标准文档和原文档.

在标准文档中,

1 每个数据有7项 (不包括标题,每个标题前有标号).

(项目名分别为:Official Symbol, Name, Other Aliases, Other Designations, Chromosome, Location, GeneID)

2 在原数据中Name项通常在Official Symbol中.处理时去掉and另起一行

3 在原数据中有些项是缺失的,处理时用空行代替.(见标准文档)

4 在例文档中的最后一项比较特殊,见标准文档中的处理.

附源程序:(又按斑竹的程序修改了,但还有错,高手们帮我看看呀)

Sub datwork() Dim i As Paragraph, n As Long, m As Long Dim myrange As Range Set doc = ActiveDocument Application.ScreenUpdating = False '关闭屏幕刷新 '=========================== For Each i In doc.Paragraphs '在活动文档的段落集合中循环 If Len(i.Range) = 1 Then '判断段落长段,此处可根据文档实际情况 i.Range.Delete '进行必要的修改可将任意长度段落删除 End If Next '=========================== With doc.Content.Find '替换:去掉and另起一行 .ClearFormatting .Text = "and" .Replacement.ClearFormatting .Replacement.Text = "^p" .Execute Replace:=wdReplaceAll, Forward:=True, _ Wrap:=wdFindContinue End With '=========================== With doc.Content.Find '替换,使Location另起一行 .ClearFormatting .Text = "Location" .Replacement.ClearFormatting .Replacement.Text = "^pLocation" .Execute Replace:=wdReplaceAll, Forward:=True, _ Wrap:=wdFindContinue End With '=========================== For Each i In doc.Paragraphs '在活动文档的段落集合中循环 If VBA.InStr(i.Range, "Links") <> 0 Then If (n = 7) Then i.Range.InsertBefore Text = Chr(13) End If n = 1 m = m + 1 End If myrange = i.Range.Words(1) & " " & i.Range.Words(2) '<此处有问题 If (n = 1) And (myrange <> "Official Symbol") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If If (n = 3) And (myrange <> "Other Aliases") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If If (n = 4) And (myrange <> "Other Designations") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If myrange = i.Range.Words(1) If (n = 2) And (myrange <> "Name") And (myrange <> "similar") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If If (n = 5) And (myrange <> "Chromosome") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If If (n = 6) And (myrange <> "Location") Then n = n + 1 i.Range.InsertBefore Text = Chr(13) End If Next

'============================ MsgBox "共有" & m & "个数据!" Application.ScreenUpdating = True '恢复屏幕刷新 End Sub

N3vc6uhb.rar (4.44 KB, 下载次数: 17)
[此贴子已经被作者于2005-8-13 0:04:19编辑过]

UCnWhR0b.rar

3.55 KB, 下载次数: 19

千辛万苦编好了程序,不能运行.斑竹帮我......

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-8-12 21:01 | 显示全部楼层

请高手帮我看看程序那错了。

TA的精华主题

TA的得分主题

发表于 2005-8-12 21:19 | 显示全部楼层

做什么用的啊,能不能说明下。这样代码更好理解一点,还有就是有没有错误信息的截图啊。

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-8-12 21:46 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

处理数据。上传的有原数据文件和处理后的理想标准文件,其中有说明。

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-8-13 00:07 | 显示全部楼层
我又按斑竹的程序改了一下,但还有错.请斑竹和朋友们帮我看看.先谢谢了.
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-15 12:59 , Processed in 0.029491 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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