明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1759|回复: 6

我需要把不同的数据只用空格分开

[复制链接]
发表于 2004-5-10 22:18:00 | 显示全部楼层 |阅读模式
我需要把不同的数据同时放在TEXTBOX1中,只用空格分开,每个分开的数据都作为一个参数使用,                                                 例如12 34 56 78                         把12赋予A,34赋予B.........
发表于 2004-5-10 22:25:00 | 显示全部楼层
用Split函数分割



pVal=Split(TextBox1.Text," ")


A=pVal(0)


B=pVal(1)


........
 楼主| 发表于 2004-5-11 07:42:00 | 显示全部楼层
我用的是CAD2000,没有split这个函数.
发表于 2004-5-11 10:00:00 | 显示全部楼层
如果真的没有可以自己编一个
  1. Public Function LeftStr(ByVal String1 As Variant, ByVal String2 As Variant)
  2. On Error Resume Next
  3.        LeftStr = Left(String1, InStr(String1, String2) - 1)
  4.        If Err Then LeftStr = False
  5. End FunctionPublic Function RightStr(ByVal String1 As Variant, ByVal String2 As Variant)
  6. On Error Resume Next
  7.        RightStr = Right(String1, Len(String1) - Len(String2) - InStr(String1, String2) + 1)
  8.        If Err Then RightStr = False
  9. End FunctionPublic Function MySplit(ByVal String1 As Variant, ByVal String2 As Variant)
  10. Dim pStr() As String
  11. Dim pStrs As New Collection
  12. Do While InStr(1, String1, String2) > 0
  13. pStrs.Add LeftStr(String1, String2)
  14. String1 = RightStr(String1, String2)
  15. Loop
  16. pStrs.Add String1
  17. ReDim pStr(pStrs.Count - 1)
  18. For i = 0 To pStrs.Count - 1
  19. pStr(i) = pStrs(i + 1)
  20. Next i
  21. MySplit = pStr
  22. End FunctionPublic Sub test()
  23. For Each i In MySplit("12 23 45", " ")
  24. MsgBox i
  25. Next i
  26. End Sub
我以前也不知道可以用Split分割,所以自己编了一个
发表于 2004-8-19 13:34:00 | 显示全部楼层
Public Function readlin(ByVal nl As String, ByRef data() As String) As String
Dim i, j As Integer
Dim d(20), s As String
s = " "
i = InStr(1, nl, s)
d(0) = 1
j = 1
While i <> 0
'd()中记录的","出现的位置
d(j) = i
i = InStr(i + 1, nl, s)
j = j + 1
Wend
d(j) = Len(nl) + 1
nn = 0 For i = 1 To j
If d(i) - d(i - 1) > 1 Then
data(nn) = Trim(Mid(nl, d(i - 1), d(i) - d(i - 1)))
nn = nn + 1
End If
Next i
End Function
发表于 2004-10-19 11:59:00 | 显示全部楼层
如果中间的空格数不均匀,如下:


1                                         2                                                                         3


12                                34                                                         56


123         345                                         567


这又怎样实现数据分开呢?
发表于 2004-10-19 17:35:00 | 显示全部楼层
以上程序如下: Public Function SplitStr(MainStr As String, Pos As Integer) As String
Dim l, i, j, n, k
Dim StrVal(0 To 100) As Variant
Dim MyStr As String
n = 1: j = 0: i = 0
MyStr = " " l = Len(MainStr)
While i < l
k = InStr(n, MainStr, " ")
If k = 0 Then k = l + 1
MyStr = Mid(MainStr, n, k - n)
n = InStr(n, MainStr, " ") If MyStr = "" Then
n = n + 1
i = i + 1
Else
j = j + 1
i = i + Len(MyStr)
StrVal(j) = MyStr
End If Wend SplitStr = StrVal(Pos)
End Function Sub test() SplitStr("1 2 3", 1) End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 04:38 , Processed in 0.180703 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表