数据转换问题,请参入!!!!

mss 2003-12-23 04:03:06

DB 040,020,0F8,017,002,0F8,04C,04B,
DB 000,000,0FF,000,02A,02A,016,015,
转变成下面格式(也就是从上面数中,间隔的取数 即:每取一个数后,然后隔一个数再取,组成第一行剩下的组成第二行),上面的数转变后变成如下所示:
DB 040,0F8,002,04C,000,0FF,02A,016,
DB 020,017,0F8,04B,000,000,02A,015,

请问用什么方法实现好,欢迎参与探讨

也就是用第一个文本框显示上面的数据,怎么转变让第二个文本框显示下面的数据
...全文
115 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2003-12-24
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Dim temp, temp1, temp2, temp3, strtemp As String, i As Long
temp = Split(Text1.Text, vbCrLf)
temp1 = Split(Split(temp(0), " ")(1), ",")
temp2 = Split(Split(temp(1), " ")(1), ",")
temp3 = Split(Split(temp(0), " ")(1) & Split(temp(1), " ")(1) & ",", ",")
For i = 0 To UBound(temp3)
If i Mod 2 = 0 Then
temp1(i / 2) = IIf(temp3(i) = "", "", temp3(i) & "H")
Else
temp2((i - 1) / 2) = IIf(temp3(i) = "", "", temp3(i) & "H")
End If
Next
strtemp = Split(temp(0), " ")(0) & " " & Join(temp1, ",") & vbCrLf & Split(temp(0), " ")(0) & " " & Join(temp2, ",")
Text2.Text = strtemp
End Sub

Private Sub Form_Load()
Text1.Text = "DB 040,020,0F8,017,002,0F8,04C,04B," & vbCrLf & "DB 000,000,0FF,000,02A,02A,016,015,"
Text2.Text = ""
End Sub
jpinglee 2003-12-23
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
dim str() as string
Dim arr1() As String
dim temp() as string
dim putstr as string
Dim i As Integer
dim tempi as integer
str=split(text1.text,vbcrlf)
arr1=split(str(0),"'")
tempi=len(arr1)
temp=split(str(1),"'")

putstr=arr1(0)

for i=1 to ubound(arr1)
putstr=putstr & "," & arr1(i)
next i

putstr=putstr & vbcrlf & temp(0)

for i=1 to ubound(temp)
putstr=putstr & "," & temp(i)
next i
text2.text=putstr

End Sub
mss 2003-12-23
  • 打赏
  • 举报
回复
已调到再滤掉一个回车就行了!
请帮忙啊兄弟!!!
Private Sub Command1_Click()
Dim l_arr1() As String
Dim l_arr2() As String
Dim l_strDB1 As String
Dim l_strDB2 As String
Dim i As Integer

m_str1 = Left(Text1.Text, Len(Text1.Text) - 1)
' m_str2 = Left(m_str2, Len(m_str2) - 1)
l_arr1 = Split(m_str1, ",")
' l_arr2 = Split(m_str2, ",")
For i = 0 To UBound(l_arr1)
If i Mod 2 = 0 Then
l_strDB1 = l_strDB1 & "," & l_arr1(i)
Else
l_strDB2 = l_strDB2 & "," & l_arr1(i)
End If
Next
' For i = 0 To UBound(l_arr1)
' If i Mod 2 = 0 Then
' l_strDB1 = l_strDB1 & "," & l_arr2(i)
' Else
' l_strDB2 = l_strDB2 & "," & l_arr2(i)
' End If
' Next
l_strDB1 = Right(l_strDB1, Len(l_strDB1) - 1) & ","
l_strDB2 = Right(l_strDB2, Len(l_strDB2) - 1) & ","

Text2.Text = l_strDB1 & l_strDB2
End Sub
mss 2003-12-23
  • 打赏
  • 举报
回复
leolan(leolan)及xzp1030 你好!
你做的和我要求的不一样吧兄弟!
第一个文本框是:(这是已知的)
DB 040,020,0F8,017,002,0F8,04C,04B,
DB 000,000,0FF,000,02A,02A,016,015,
所求的要求在另一个文本框中显示所求结果为:
DB 040,0F8,002,04C,000,0FF,02A,016,
DB 020,017,0F8,04B,000,000,02A,015,
xzp1030 2003-12-23
  • 打赏
  • 举报
回复
Private String1 As String
Private String2 As String

Private Sub Command1_Click()
Dim tmp As Boolean
Dim two() As String
aa = Right(String1, Len(String1) - 2)
bb = Right(String2, Len(String2) - 2)
Group = aa & bb
two = Split(Group, ",", -1)
tmp = True
For i = 0 To UBound(two)
If tmp Then
oneline = oneline & " " & two(i)
tmp = False
Else
twoline = twoline & " " & two(i)
tmp = True
End If
Next
oneline = "DB " & oneline
twoline = "DB " & twoline
Debug.Print oneline
Debug.Print twoline
MsgBox oneline
MsgBox twoline
End Sub

Private Sub Form_Load()
String1 = "DB 040,020,0F8,017,002,0F8,04C,04B,"
String2 = "DB 000,000,0FF,000,02A,02A,016,015,"
End Sub
leolan 2003-12-23
  • 打赏
  • 举报
回复
'添加2個textbox,1個commandbutton

Option Explicit
Private m_str1 As String
Private m_str2 As String

Private Sub Command1_Click()
Dim l_arr1() As String
Dim l_arr2() As String
Dim l_strDB1 As String
Dim l_strDB2 As String
Dim i As Integer

m_str1 = Left(m_str1, Len(m_str1) - 1)
m_str2 = Left(m_str2, Len(m_str2) - 1)
l_arr1 = Split(m_str1, ",")
l_arr2 = Split(m_str2, ",")
For i = 0 To UBound(l_arr1)
If i Mod 2 = 0 Then
l_strDB1 = l_strDB1 & "," & l_arr1(i)
Else
l_strDB2 = l_strDB2 & "," & l_arr1(i)
End If
Next
For i = 0 To UBound(l_arr1)
If i Mod 2 = 0 Then
l_strDB1 = l_strDB1 & "," & l_arr2(i)
Else
l_strDB2 = l_strDB2 & "," & l_arr2(i)
End If
Next
l_strDB1 = Right(l_strDB1, Len(l_strDB1) - 1) & ","
l_strDB2 = Right(l_strDB2, Len(l_strDB2) - 1) & ","
Text1.Text = l_strDB1
Text2.Text = l_strDB2
End Sub

Private Sub Form_Load()
m_str1 = "040,020,0F8,017,002,0F8,04C,04B,"
m_str2 = "000,000,0FF,000,02A,02A,016,015,"
Text1.Text = m_str1
Text2.Text = m_str2
End Sub

絕對沒錯的!!!
leolan 2003-12-23
  • 打赏
  • 举报
回复
呵呵,這可是已經調試過了的呀~~~兄弟!!!!難道你運行時有什麼問題嗎?
mss 2003-12-23
  • 打赏
  • 举报
回复
leolan(leolan) 你好!
请你给完整的写一下好吗再调试一下多谢
我现在还没能好明天就要验收我的帮帮忙吧兄弟!!
leolan 2003-12-23
  • 打赏
  • 举报
回复
Private m_str1 As String
Private m_str2 As String

Private Sub Command1_Click()
Dim l_arr1() As String
Dim l_arr2() As String
Dim l_strDB1 As String
Dim l_strDB2 As String
Dim i As Integer

m_str1 = Left(m_str1, Len(m_str1) - 1)
m_str2 = Left(m_str2, Len(m_str2) - 1)
l_arr1 = Split(m_str1, ",")
l_arr2 = Split(m_str2, ",")
For i = 0 To UBound(l_arr1)
If i Mod 2 = 0 Then
l_strDB1 = l_strDB1 & "," & l_arr1(i)
Else
l_strDB2 = l_strDB2 & "," & l_arr1(i)
End If
Next
For i = 0 To UBound(l_arr1)
If i Mod 2 = 0 Then
l_strDB1 = l_strDB1 & IIf(Len(l_strDB1) > 0, ",", "") & l_arr2(i) '& "," & l_arr2(i)
Else
l_strDB2 = l_strDB2 & IIf(Len(l_strDB1) > 0, ",", "") & l_arr2(i) '& "," & l_arr2(i)
End If
Next
l_strDB1 = Right(l_strDB1, Len(l_strDB1) - 1) & ","
l_strDB2 = Right(l_strDB2, Len(l_strDB2) - 1) & ","
Text1.Text = l_strDB1
Text2.Text = l_strDB2
End Sub

Private Sub Form_Load()
m_str1 = "040,020,0F8,017,002,0F8,04C,04B,"
m_str2 = "000,000,0FF,000,02A,02A,016,015,"
Text1.Text = m_str1
Text2.Text = m_str2
End Sub
mss 2003-12-23
  • 打赏
  • 举报
回复
986753421(做点什么?)
你好,你把我所想要的结果变成了三行,你可调试试一下
我想要的结果应是:
DB 040,0F8,002,04C,000,0FF,02A,016,
DB 020,017,0F8,04B,000,000,02A,015,

?????????????????????????????????????????
艾!就要交任务了现在还没搞出来,请大侠帮助帮助拉,多谢!!!
?????????????????????????????????????????
zhengwansong012 2003-12-23
  • 打赏
  • 举报
回复
在数据库的工具菜单中可以从数据库实用工具的下级菜单数据库转换中实行
mss 2003-12-23
  • 打赏
  • 举报
回复
????????????????
上面的代码是不行的有问题,欢迎大家参入!!!!
szyhy810518 2003-12-23
  • 打赏
  • 举报
回复
Dim i As Long
Dim iCount As Long

Dim str1 As String
Dim str2 As String

Dim arrStr1() As String
Dim arrStr2() As String
Dim arrStr3() As String

arrStr1 = Split(Text1.Text, vbCrLf)

arrStr2 = Split(arrStr1(0), " ")
arrStr3 = Split(arrStr1(1), " ")

arrStr1 = Split(arrStr2(1) & arrStr3(1), ",")

iCount = UBound(arrStr1) - 1

For i = 0 To iCount
If i Mod 2 = 0 Then
str1 = str1 & arrStr1(i) & ","
Else
str2 = str2 & arrStr1(i) & ","
End If
Next

Text2.Text = arrStr2(0) & " " & str1 & vbCrLf & arrStr3(0) & " " & str2
liyan010 2003-12-23
  • 打赏
  • 举报
回复
同意~ 一个split函数搞定
986753421 2003-12-23
  • 打赏
  • 举报
回复
dim iCount as integer
dim sLine1 as String
dim sLine2 as String
sLine1=trim(split(text1.text,",")(0))
sLine2=trim(split(text1.text,",")(1))
for iCount=2 to ubound(split(text1.text,","))
if iCount mod 2 =0 then
sLine1=sLine1 & "," & trim(split(text1.text,",")(iCount))
else
sLine2=sLine2 & "," & trim(split(text1.text,",")(iCount))
end if
next iCount
text2.text=sLine1 & vbcrlf & sLine2
【特征工程是什么?】 身高不同的两人,比较体重毫无意义, 但是如果将身高体重加以计算,转化成了BMI指数:BMI=体重/(身高^2) 通过比较这个新创造的特征值,谁胖谁瘦就一目了然了。 这就是特征工程,将原始数据转换为可以更好的、代表预测模型潜在问题的特征,通过分析这个新的特征,可以得到更准确的预测结果。 【特征工程——Python数据分析必备】 脏数据的“清洗剂” 有人说:学会了Python语言,就会做数据分析? 不一定! 你拿到的数据样本集,有可能存在这些问题: 如果样本数据存在问题,对数据建模的执行效率会有很大影响,甚至可能会造成模型结果的偏差。 不懂特征工程,数据分析=白忙一场! 【站内首门!特征工程全解课程】 过去,数字化是企业优化的要点; 而今,数字化成为了企业活下去的关键。 而数据分析应用有多广,特征工程的学习需求就有多大。 不过,大部分课本对于特征工程这一知识点鲜有提及,市面上的课程也少之又少,导致很多人在实际工作或学习中,遇到问题束手无策,严重降低效率。 CSDN全站首发——Python数据处理与特征工程 课程聚焦数据科学中,数据清洗与分析前的特征提取过程,解决数据科学中最重要的原始数据清洗和特征提取。 【定制课程 精准扫除学习盲点】 课程充分考虑各类实际问题,将每个知识点融入到对应的代码实例中,初学者也可无压力上手,讲师手把手带领入门。 知识点扫盲 + 案例实践 + 线上答疑 扫清数据分析前的所有障碍,提升你的数据工作的效率与准确度。 如果你是: 在这里你可以收获...... 了解如何将各类型数据载入计算机,进而愉快的探索数据科学; 掌握如何将需要分析的数据转化为算法模型可以接受的格式; 学会特征提取最基本的处理方式,为后续的算法学习打好基础。 经过19节课程的学习,你可以基本掌握数据采集、读取以及清洗的方法,具备进一步学习数据分析乃至深度学习的能力,能够大大拓宽你日后的求职道路。 【三重福利  惊喜等你】

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧