如何在VB中编程对EXCEL中数据进行分列

如何在VB中编程对EXCEL中数据进行分列,第1张

一、对于第1、3两个问题,我写的这个宏可以完美解决,代码如下:

Sub 分列()

'以空格为分隔符,连续空格只算1个。对所选中的单元格进行处理

Dim m As Range, tmpStr As String, s As String

Dim x As Integer, y As Integer, subStr As String

If MsgBox("确定要分列处理吗?请确定分列的数据会覆盖它后面的单元格!", _

vbYesNoCancel + vbQuestion) <> vbYes Then Exit Sub

For Each m In Selection

x = mColumn()

y = mRow()

tmpStr = mValue

subStr = ""

For i = 1 To Len(tmpStr)

s = Mid(tmpStr, i, 1)

If s = " " And subStr = "" Then '连续的空格,忽略

ElseIf s = " " And subStr <> " " Then '空格表示子串结束

Cells(y, x)Value = subStr

subStr = ""

x = x + 1

ElseIf s <> " " Then '新子串开始或进行中

subStr = subStr & s

End If

Next i

If subStr <> "" Then Cells(y, x)Value = subStr

Next m

End Sub

二、楼主所提的第2个问题,Excel早就考虑到了,所以Excel提供了一个叫个人宏工作簿的文件用来存放自己要用的宏!

可以通过录制宏到“个人宏工作簿”来让Excel自动建立“个人宏工作簿”,如果没有的话。然后,你按Alt+F8选中你所录制的宏,点单步执行,即可在宏编辑器中看到个人宏工作簿中的宏,此时你可把自己的代码放进去,或者删除自己胡乱录制的宏。

Good Luck!

下面的代码是利用三边计算三角形面积

Private Sub Command1_Click()

a=val(text1text)

b=val(text2text)

c=val(text3text)

p=(a+b+c)/2

s=sqr(p(p-a)(p-b)(p-c))

if a+b>c and b+c>a and a+c>b then

text4text="三角形的面积是:" & s

else

text4text="不能构成三角形"

end if

end sub

下面是计算两数之和的代码

private sub command1_click()

a=val(text1text)

b=val(text2text)

text3text=a+b

end sub

Private Sub Command1_Click()

Dim i, j As Integer '定义两个变量,i为行,j为列

For i = 1 To 3 '3行

For j = 1 To 4 '4列

Print ""; '不换行

Next j

Print '换行

Next i

End Sub

以上就是关于如何在VB中编程对EXCEL中数据进行分列全部的内容,包括:如何在VB中编程对EXCEL中数据进行分列、vb编程实例、用VB程序设计一个三行四列的二维矩阵,应该怎么弄,求高手教教等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9776182.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存