【发布时间】:2014-11-19 18:30:55
【问题描述】:
我正在尝试使用 Excel 重新映射 Word 文档中的某些文本,以生成为在线教育工具格式化的文件。
Word 中的文本是一系列多项选择题和答案。 Word 文件中的正确答案字母格式为粗体和下划线。粘贴到 Excel 后,我想将正确的(粗体、下划线)字母更改为“正确”一词。
我希望浏览答案字母,测试它们是否是粗体,然后用“正确”一词替换粗体条目。
Excel VBA 不会将正确答案视为粗体。 (我还不能粘贴图片,所以我将描述我所看到的:)
- 单元格 B17 的格式为粗体和下划线。菜单栏上突出显示的按钮也表示粗体和下划线。
- 如果我点击字体菜单,我看到格式基本上是空的。没有选择常规、粗体、斜体、粗斜体。
我无法弄清楚如何让 VBA 将单元格 B17 中包含的字体识别为粗体。其他单元格 B13、B15、B19 和 B21 显示为常规字体。只有单元格 B17 似乎有问题,即使在视觉上它似乎是粗体和下划线。我尝试让代码将字体识别为“不规则”,但它也无法识别。字体信息似乎为空或不存在。我不确定如何继续这一点。
这似乎是 Excel 复制/粘贴或 Excel 存储字体信息的方式中的错误。似乎菜单栏有正确的信息,但字体菜单没有。无论哪种方式,VBA 都无法访问该信息。
同样,我的代码试图在单元格中插入“正确”一词,并使用粗体字体。
Sub IsBold()
START:
For jump = 1 To 5
'If ActiveCell.Font.Bold = True Then (I was trying this, when it didn’t work I tried the line below)
If ActiveCell.Font.FontStyle <> "Regular" Then (this didn’t work either)
ActiveCell.Value = "Correct"
End If
ActiveCell.Select
Selection.End(xlDown).Select
Next jump
Selection.End(xlDown).Select
GoTo START:
End Sub
【问题讨论】:
标签: excel copy format paste vba