Excel Vba函数,没有任何字符限制?

Kri*_*iya 2 excel vba function character max excel-vba

我在excel VBA中使用一个函数,我从一长串单元格中提取数据.

我正在使用这个功能

Function name(cell As Range) As Double

Dim Textstrng As String
Textstrng = cell.text
name = InStr(1, Textstrng, "UpgradeApprovalCode=")
End Function
Run Code Online (Sandbox Code Playgroud)

UpgradeApprovalCode=字符串中的大约8000个字符内显示结果时,如7000.但是当它远离前10000个字符时,它不显示#VALUE!,不结果.

那么是否有任何搜索字符限制或我如何克服这一点.我正在使用office 2007.

bre*_*tdj 5

尝试使用该Value属性而不是Text

Textstrng = cell.Value

编辑:

Sub main()
Dim cell As Range
Dim sh As Worksheet
Set sh = ActiveSheet
Set cell = sh.Cells(1, 1)
Call GetName(cell)
End Sub

Function GetName(cell As Range) As Double

Dim Textstrng As String
Textstrng = cell.Value
GetName = InStr(1, Textstrng, "UpgradeApprovalCode=", vbTextCompare)
End Function
Run Code Online (Sandbox Code Playgroud)

  • + 1.是的,我们需要使用`.Value` @KrisshanSirohiya:`Value`属性返回单元格的实际值,其中`Text`属性返回屏幕上显示的文本.在较高版本的Excel中,"Text"的限制大约是8k个字符.另一方面,"价值"最多可存储32k个字符. (4认同)