编写一个程序,提取字符串中的数字符号。例如,程序运行后输入字符串abc123edf456gh,则输出“123456”。 10

(删除#####[N]#####处的内容,在其位置填上自己补充的内容)1.编写一个程序,提取字符串中的数字符号。例如,程序运行后输入字符串abc123edf456gh,则... (删除#####[N]#####处的内容,在其位置填上自己补充的内容)

1.编写一个程序,提取字符串中的数字符号。例如,程序运行后输入字符串abc123edf456gh,则输出“123456”。
Sub tq()
s = InputBox("请输入一个字符串:") '输入一个字符串,放在变量s中
n =####[1]#### '第1空,求出s的长度,放在变量n中
For i = 1 To n
a = ####[2]#### '第 2 空,求字符串s的长度
If ####[3]#### Then '第 3 空,如果a的值是0到9之间的数字符号,
b = ####[4]#### '第 4 空,则把它拼接到结果字符串变量b中
End If
Next i
MsgBox b '输出结果
End Sub
2.工作表第1行有n个升序排列的数值,第2行有m个升序排列的数值,请编写一个程序,将第2行的数据合并到第1行中,并保持所有数据升序排列。
Sub 合并()
r = Rows(1).End(xlToRight).Column
t = Rows(2).End(xlToRight).Column
For i = 1 To t
For j = i To r
If Cells(2, i) < Cells(1, j) Then
For s = r To j Step ####[1]#### '第 1 空
Cells(1, s + 1) = ####[2]#### '第 2 空
Next s
Cells(1, j) = Cells(2, i)
Cells(2, i) = ""
r = ####[3]#### '第 3 空
Exit For

ElseIf Cells(2, i) >= Cells(1, r) Then

Cells(1, r + 1) = Cells(2, i)
Cells(2, i) = ""
r = r + 1
####[4]#### '第 4 空
End If
Next j
####[5]#### '第 5 空

End Sub

3.“求任意区域数值总和”按钮指定到名称为“sumSelection”的宏,补充宏代码,使之完成如下功能:计算工作表中任意选定区域的数据总和,并用信息提示对话框将结果输出.
Sub sumSelection()
For ####[1]#### In Selection '第1空,”For ####[1]#### In Selection“
s = ####[2]#### + x '第2空
Next
msgbox "该区域的总和为:" ####[3]#### '第3空,”msgbox "该区域的总和为:" & ####[3]#### “
End Sub
4.“从分班”按钮指定到名称为“Student”的宏,补充宏代码,使之完成如下功能:按顺序(成绩从高到低)对学生进行分班,每个班25名学生,每个班保存在一个新的工作表中。
Sub Student()
n = 0
While Not (IsEmpty(Cells(n + 4, 1)))
n = ####[1]#### '第 1 空
Wend
m = Application.WorksheetFunction.RoundUp((n / 25), 0)
bs = 1
Do
Sheets.Add
ActiveSheet.Name = Str(bs) + "班"
Cells(1, 1) = "英语" + Str(bs) + "班名单"
Cells(2, 1) = "学号"
Cells(2, 2) = "姓名"
Cells(2, 3) = "成绩"
For i = 1 To 25
For j = 1 To ####[2]#### '第 2 空
Cells(i + 2, j) = Sheets("sheet1").Cells(i + 3 + ####[3]#### * 25, j) '第 3 空
Next
Next
bs = ####[4]#### '第 4 空, ####[4]####
Loop While ####[5]#### '第 5 空, ####[5]####
End Sub
展开
 我来答
Arthittt
2016-06-14 · TA获得超过129个赞
知道答主
回答量:25
采纳率:0%
帮助的人:5.1万
展开全部
1
Sub tq()
s = InputBox("请输入一个字符串:") '输入一个字符串,放在变量s中
n = Len(s) '第1空,求出s的长度,放在变量n中
For i = 1 To n
a = Mid(s, i, 1) '第 2 空,求字符串a
If a >= o And a <= 9 Then '第3 空,如果a的值是0到9之间的数字符号,
b = b & a '第 4 空,则把它拼接到结果字符串变量b中
End If
Next i
MsgBox b '输出结果
End Sub

2
Sub 合并()
r = Rows(1).End(xlToRight).Column '求第一行列数
t = Rows(2).End(xlToRight).Column '求第二行列数
For i = 1 To t '对第二行的每个数据进行处理
a = Cells(2, i): Cells(2, i) ="" '取出第二行的一个数据
For s = r To 1 Step -1 '第 1 空,从后往前扫描
If a >= Cells(1, s) Then Exit For '第 4 空,退出本层循环
Cells(1, s + 1) = Cells(1, s) '第 2 空,移动数据
Next s
Cells(1, s + 1) = a '插入数据
r = r + 1 '第3 空,修改目标数据区长度
Next '第 5 空
End Sub

3
Sub sumSelection()
For Each x In Selection '第1空,”
s = s + x '第2空
Next
msgbox "该区域的总和为:"& s '第3空
End Sub

4
Sub Student()
n = 0
While Not(IsEmpty(Cells(n + 4, 1)))
n = n + 1 '第 1 空
Wend
m =Application.WorksheetFunction.RoundUp((n / 25), 0)
bs = 1
Do
Sheets.Add
ActiveSheet.Name = Str(bs) + "班"
Cells(1, 1) = "英语" + Str(bs) + "班名单"
Cells(2, 1) = "学号"
Cells(2, 2) = "姓名"
Cells(2, 3) = "成绩"
For i = 1 To 25
For j = 1 To 3 '第 2 空
Cells(i + 2, j) =Sheets("sheet1").Cells(i + 3 + (bs - 1) * 25, j) '第3 空
Next
Next
bs = bs + 1 '第 4 空
Loop While bs <= m '第 5 空
End Sub
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式