Vba Excel单元格值作为字符串赢得';不能存储为字符串
我无法在这里获取此代码以获取单元格内容并存储为字符串。我得到一张双人票:Vba Excel单元格值作为字符串赢得';不能存储为字符串,vba,excel,Vba,Excel,我无法在这里获取此代码以获取单元格内容并存储为字符串。我得到一张双人票: 54.66666 7而不是N03:DM:(示例单元格内容) 如果我使用Cstr(Sheet1.Cells(I,5.Value)我仍然得到相同的结果 任何帮助都将不胜感激 Option Explicit Private Sub GetAddress() Dim varAdd As String Dim i As Integer For i = 2 To 327 If varTag = Sheet1
54.66666 7
而不是N03:DM:
(示例单元格内容)
如果我使用Cstr(Sheet1.Cells(I,5.Value)我仍然得到相同的结果
任何帮助都将不胜感激
Option Explicit
Private Sub GetAddress()
Dim varAdd As String
Dim i As Integer
For i = 2 To 327
If varTag = Sheet1.Cells(i, 2).Value Then
varAdd = Sheet1.Cells(i, 5).Value
varAdd = Left(varAdd, 7)
Sheet3.Cells(incR, 2).Value = varAdd
Exit For
End If
Next i
End Sub
工作表屏幕截图使用范围(“A1”).Text
而不是.Value
评论后编辑:
为什么?
因为Range对象的
.Text
属性返回的是电子表格中实际可见的内容,所以如果您在单元格中显示例如i100l:25he*92
,那么您可以提供sheet1的屏幕截图。@Santosh发布了屏幕截图,谢谢。您打开了多个工作簿吗msgbox Sheet1.Parent.name
会让您知道工作簿的名称吗?我希望数据在sheet1中。@Santosh只显示工作簿的名称。是的,数据在表1中。看起来mehow提供了一个有效的解决方案。谢谢你的时间。你能上传你的工作簿并给我链接吗。想了解为什么文本起作用而值不起作用。Tks。
Sub main()
Dim ws As Worksheet, i&, j&
Set ws = Sheets(1)
For i = 3 To 7
For j = 1 To 4
Debug.Print _
"row " & i & vbTab & vbTab & _
Cells(i, j).Text & vbTab & _
Cells(i, j).Value & vbTab & _
Cells(i, j).Value2
Next j
Next i
End Sub
.TEXT .VALUE .VALUE2
row 3 hello hello hello
row 3 hello hello hello
row 3 hello hello hello
row 3 hello hello hello
row 4 1 1 1
row 4 1 1 1
row 4 01/01/1900 31/12/1899 1
row 4 1.00% 0.01 0.01
row 5 helo1$$ helo1$$ helo1$$
row 5 helo1$$ helo1$$ helo1$$
row 5 helo1$$ helo1$$ helo1$$
row 5 helo1$$ helo1$$ helo1$$
row 6 63 63 63
row 6 =7*9 =7*9 =7*9
row 6 03/03/1900 03/03/1900 63
row 6 6300.00% 63 63
row 7 29/05/2013 29/05/2013 41423
row 7 29/05/2013 29/05/2013 29/05/2013
row 7 29/05/2013 29/05/2013 41423
row 7 29/05/2013% 29/05/2013% 29/05/2013%