【问题标题】:Can i limit 255 characters in a variable in vba?我可以在 vba 中的变量中限制 255 个字符吗?
【发布时间】:2022-06-10 23:14:02
【问题描述】:

我需要在循环中创建一个变量,使其最大值为 255 个字符。我怎样才能做到这一点? 我使用的系统将字符数限制为 255。在某些情况下,这个值被夸大了很多:P

                Dim resultado As String
            resultado = ""
            Range("m2").Select
            
            resultado = ActiveCell.Value
            ActiveCell.Offset(1, 0).Select
            
            
            Do While ActiveCell.Value <> ""
              resultado = resultado & ";" & ActiveCell.Value
              ActiveCell.Offset(1, 0).Select
            Loop

【问题讨论】:

标签: excel vba excel-2010


【解决方案1】:

试试这个

        Dim resultado As String: resultado = ""
        Dim I as long: I = 0
        Range("m2").Select
        
        Do While ActiveCell.Offset(I ,0).Value <> ""
        If len( resultado & ";" & ActiveCell.Offset(I ,0).Value) < 255 Then
          resultado = resultado & ";" & ActiveCell.Offset(I ,0).Value
        End if 
           I = I + 1
        Loop

【讨论】:

    【解决方案2】:

    你可以这样做 -

    Sub Test()
        Dim resultado As String, c As Range, v, sep
        
        Set c = ActiveSheet.Range("M2") 'start here
        Do
            v = c.Value
            If Len(v) = 0 Then Exit Do                      'stop if no more data
            If Len(resultado & sep & v) > 256 Then Exit Do  'too long?
            resultado = resultado & sep & v                 'not too long - append
            sep = ";"               'add separator after first value
            Set c = c.Offset(1)     'next cell
        Loop
        
        Debug.Print Len(resultado), resultado
    End Sub
    

    【讨论】:

    • 尽管确实有帮助,但我强烈建议完全限定范围参考,尤其是在回答明显初学者的问题时,这样他们就不会陷入熟悉的陷阱。 @蒂姆威廉姆斯
    猜你喜欢
    • 1970-01-01
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-24
    • 1970-01-01
    • 2019-12-03
    • 2012-02-27
    相关资源
    最近更新 更多