我正在将Word文档中表格单元格中的文本复制到Excel电子表格中的单元格中。
我在Word中有一个VBA宏,它主要使用以下语句来复制单元格文本
nWorksheet.Cells(nRow, nCol).Text = oDocument.Range(Start:=oCell.Range.Start, End:=oCell.Range.End - 1)
不幸的是,最终在电子表格单元格中的内容似乎有一个额外的不可见字符,其作用类似于换行符或回车符。
有人知道这个额外的角色是什么吗?或者如何避免它?
谢谢!
我使用这个小函数从单元格返回文本,因为我总是忘记逻辑,但调用getCellText
很容易记住。
Public Function getCellText(c As Word.cell) As String
'returns text without cell-end
getCellText = Replace(c.Range.Text, Chr(13) & Chr(7), vbNullString)
'alternative:
'getCellText = Left(c.Range.text, Len(c.Range.text) - 2)
End Function
Chr(13) & Chr(7)
表示需要删除的单元格末端。因此,您需要将末尾移动两个字符或将其替换。
你可以这样使用它:
nWorksheet.Cells(nRow, nCol).Text = getCellText(oCell)