……=LenB(StrConv(字符串,vbFromUniCode))

解决方案 »

  1.   

    这位大哥:
        我想要的是能计算出列字符串的实长度,来控制列的宽度
    如:vs1.colwith=9000
    而算出的字符串的长度不能用???
      

  2.   

    用Picture1.TextWidth("字符串")可以取得这个字符串的宽度(单位:twip)
    另外:Picture1的字体和字号须与你的表格相同.
      

  3.   

    主  题:问个VB的问题:
    作  者:gwbasic
    军  衔:大校 
    功 勋 值:2292 
    职  务:
    所属论坛:灌水之地
    问题点数:10
    回复次数:15
    人气点数:54
    发表时间:2002-5-27 16:13:56
    转移帖子到灌水  
    Len("123") = 3
    Len("中国人") = 3
    LenB("中国人") = 6
    LenB("123") = 6有什么函数能返回如下结果"中国人" = 6
    "123" = 3 ★Jneu★ 军衔:一级上将 职务:[一个小红旗] | 回复时间:2002-5-27 16:16:38   
    LenB(StrConv(Str, vbFromUnicode))
    或者使用API函数。 ★gwbasic★ 军衔:大校 职务:[] | 回复时间:2002-5-27 16:32:56   
    是不是ASP里没有StrConv这个函数? ★jinesc★ 军衔:YNY 职务:[OOO] | 回复时间:2002-5-27 16:34:25   
    VB里的,  ASP中有可能没有的★gwbasic★ 军衔:大校 职务:[] | 回复时间:2002-5-27 16:35:27   
    那有别的办法吗?★jinesc★ 军衔:YNY 职务:[OOO] | 回复时间:2002-5-27 16:36:24   
    要不就自己写一个,用循环来判断 ASC()的值,以前TTYP写过的★gwbasic★ 军衔:大校 职务:[] | 回复时间:2002-5-27 16:37:09   
    再次感谢,我明白了 
    ★gwbasic★ 军衔:大校 职务:[] | 回复时间:2002-5-27 16:57:55   
    Function LenA( S )
      Dim I
      LenA = 0
      For I = Len( S ) To 1 Step -1
        If Asc(Mid(S, I, 1)) > 255 Or Asc(Mid(S, I, 1)) < 0 Then
          LenA = LenA + 2
        Else
          LenA = LenA + 1
        End If
      Next
    End Function