我有一个excel表包含几个单元格,这些单元格应该是文本(从网站复制),但实际上单元格内容的行为类似于允许选择其中包含的文本的某种图像。我想将Excel工作表导出为CSV文件,但无法导出这些单元格的内容。由于存在数百个具有此问题的单元格,我想知道是否可以快速将所有这些图像文本混合转换为纯文本,以便将它们正确导出为txt / CSV。
提前致谢。
答案 0 :(得分:1)
在这里走出一条腿,这个假设可能会有所帮助,也可能没有帮助。
感谢Tim的评论,我假设文本'containers'是Excel Shapes并位于活动工作表中。
此代码将从每个形状中提取文本,并将其放置在形状的左上角单元格附近的空白单元格中,然后再删除形状。它不区分形状,也不识别形状是否包含在组中,也不将提取的文本放在列表中。但是,如果它可以帮助您相应地优化代码。
Sub textFromShapes()
Dim shp As Shape
Dim shpLoc As String
For Each shp In ActiveSheet.Shapes
With shp
shpLoc = .TopLeftCell.Address
Do Until Range(shpLoc) = ""
shpLoc = Range(shpLoc).Offset(1, 0).Address
Loop
Range(shpLoc) = .TextFrame.Characters.Text
.Delete
End With
Next
End Sub