【发布时间】:2015-04-01 19:44:44
【问题描述】:
我有一个 Word 文档,其中我为文本行添加了书签 - 例如每行 10 行。我在 word 文档的不同页面上有 6 个这样的文本行,所以我在整个 Word 文档中总共有 6 个书签。现在给定 Excel 中的某些标准,例如 Coulmn A1:A6 是否有:
0,1,1,1,0,1
如果单元格 A1 为 0,则删除名为 sai1 的第一个书签,sai1.delete,如果单元格 A2 为 1,则不删除名为 sai2 的书签,如果单元格 A3 为 1,则不删除,但如果为 0,则删除以此类推;基本上我想要的是一个循环来为 100+ 一些书签在 excel 中给出 100+ 标准,它可能更多。除了 if-else 语句,我找不到更简单的方法。我将非常感谢您的帮助。 到目前为止,这是我的代码:
Set wtb1 = wdd.Bookmarks("D043").Range
Set wtb2 = wdd.Bookmarks("D044").Range
Set wtb3 = wdd.Bookmarks("D018").Range
Set wtb4 = wdd.Bookmarks("D046").Range
If Sheets("CPA").Cells(426, 7).Value = 0 Then
wtb1.Delete
ElseIf Sheets("CPA").Cells(427, 7).Value = 0 Then
wtb2.Delete
ElseIf Sheets("CPA").Cells(428, 7).Value = 0 Then
wtb3.Delete
ElseIf Sheets("CPA").Cells(429, 7).Value = 0 Then
wtb4.Delete
End If
有没有 For 循环方法来解决这个问题?我也试过这样做:
For k = 426 To 429
If Sheets("CPA").Cells(k, 7).Value = 0 Then
'Sheets("CPA").Cells(i, 10) = Sheets("CPA").Cells(i, 9).Value
Value1 = Sheets("CPA").Cells(426, 9).Value
Value1(i).Text.Delete
i = i + 1
End If
Next
【问题讨论】: