我从Excel电子表格中获取数据并将其插入Word文档。这是我正在使用的代码按预期工作。
Private Sub insertData(wb As Excel.Workbook)
Dim numBM As Integer
Dim countBM As Integer
Dim currentBM As String
numBM = ActiveDocument.Bookmarks.Count
For countBM = 1 To numBM
currentBM = ActiveDocument.Bookmarks(countBM).Name
ActiveDocument.Bookmarks(currentBM).Range.Text = wb.Names(currentBM).RefersToRange.Value2
Next
End Sub
在Excel中,我有一些百分比类型格式的单元格。因此,单元格的值为0.857394723,但单元格显示“86%”。如何更改我的代码,以便将“86%”插入Word而不是“0.857394723”
答案 0 :(得分:1)
使用VBA标准库中的Strings.Format
方法相应地格式化值:
Dim formattedValue As String
formattedValue = Format(wb.Names(currentBM).RefersToRange.Value2,"0%")
ActiveDocument.Bookmarks(currentBM).Range.Text = formattedValue
答案 1 :(得分:1)
我实际上找到了答案,这非常简单。而不是使用... RefersToRange.Value我可以使用... RefersToRange.Text所以行变为
ActiveDocument.Bookmarks(currentBM).Range.Text = wb.Names(currentBM).RefersToRange.Text