当前位置:编程学习 > VB >>

求教个问题,忘高手帮忙呀

dim a,j
a=*****   '初始化
j=******   '初始化
do while a不等于j

a获得新值

loop

我这个代码很简易,就是方便描述下问题,当初始化的数字的时候没有问题,但是当a,j是字符串的时候,包含了字母,do while 就不能执行下去了,求个 专门做比较的函数,谢谢了,最好写上具体的语法,十分感谢
--------------------编程问答-------------------- 来个好心人啊,555555 --------------------编程问答--------------------
Private Function comp(ByVal X As String, ByVal y As String) As Boolean
If X = y Then
comp = True
Else
comp = False
End If
End Function

Private Sub Form_Load()
Dim a, j
a = 1234 '初始化
j = 3243 '初始化
If comp(a, j) = False Then a = 7889
Debug.Print a
End Sub
--------------------编程问答-------------------- dim a$,j$   '宣告为文字型 要养成定义的习惯

dim a&,j&   '宣告为长整数型 --------------------编程问答--------------------
引用 3 楼 cbm666 的回复:
dim a$,j$  '宣告为文字型 要养成定义的习惯

dim a&,j&  '宣告为长整数型



顶楼上 --------------------编程问答--------------------
引用楼主 youlingxiaoai 的回复:
dim a,j
a=*****  '初始化
j=******  '初始化
do while a不等于j

a获得新值

loop

我这个代码很简易,就是方便描述下问题,当初始化的数字的时候没有问题,但是当a,j是字符串的时候,包含了字母,do while 就不能执行下去了,求个 专门做比较的函数,谢谢了,最好写上具体的语法,十分感谢

楼主的代码没什么大问题 
只要把变量定义成字符串就可以了
vb自己会判断字符串是不是数值型并自动转换的
Private Sub Command1_Click()
Dim a$, j$
a = 1 '初始化
j = 100 '初始化
Do While a <> j
 a = InputBox("enter a")
Loop
End Sub

--------------------编程问答--------------------
引用楼主 youlingxiaoai 的回复:
dim a,j
a=*****  '初始化
j=******  '初始化
do while a不等于j

a获得新值

loop

我这个代码很简易,就是方便描述下问题,当初始化的数字的时候没有问题,但是当a,j是字符串的时候,包含了字母,do while 就不能执行下去了,求个 专门做比较的函数,谢谢了,最好写上具体的语法,十分感谢

没看懂:
Private Sub Command1_Click()
Dim a, j
a = "6hgi"  '初始化"
j = "6hgj" '初始化
Do While a <> j'字符串一样可以比较,什么叫进行不下去了。

'a获得新值

Loop
End Sub
--------------------编程问答-------------------- 有时 不见得必需做初始化
大半看到的就是 i=0 j=0 aa=""  bb=""  Text1.text="".........

玩个小游戏

Option Explicit
Dim i&, j&
Private Sub Command1_Click()
   Randomize
   Do
      DoEvents
      i = Int(Rnd * 1000)
      j = Int(Rnd * 1000)
      Me.Caption = CStr(i) & "  " & CStr(j)
   Loop Until i = j
   MsgBox "相同值:" & CStr(i)
End Sub
--------------------编程问答-------------------- 如果只想比较2个数的话,就不让文本框接收字母字符。

Private Sub Text1_KeyPress(KeyAscii As Integer)
    Select Case KeyAscii
        Case 48 To 57, 8             '文本框中只接收数字字符键和退格键
        Case Else
            KeyAscii = 0
    End Select
End Sub
--------------------编程问答-------------------- 装换成字符串再比较也行啊
code=VB]
 Do While CStr(a) <> CStr(b)
    a 'get new value
 Loop
[/code]
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,