excel 如何宏 设置删除指定区域
例如.Range("A1:AZ300").ClearContents想把A1:AZ300设置为手动输入,每次运行宏的时候手动输入,请教大神代码怎么写,还有怎样让宏识别在执...
例如.Range("A1:AZ300").ClearContents 想把A1:AZ300设置为手动输入,每次运行宏的时候手动输入,请教大神代码怎么写,还有怎样让宏识别在执行自动运算时计算到有数值的最后一行,比如A列10行 B列10行 C列第一行=A+B 宏在执行的时候自动运算时执行到第10行 代码不是rangeC1:C10 下次换个20行的 执行宏也能计算到20行,谢谢,积分还会追加送上~
展开
3个回答
展开全部
你问的2个问题。我分别用2个程序来告诉你。
Sub a()
Dim str$
str = VBA.InputBox("请输入你要清除的区域!")
If Len(str) = 0 Then
Exit Sub
Else
Range(str).ClearContents
End If
End Sub
'第2问
Sub b()
Dim i&
For i = 1 To [a65536].End(xlUp).Row 'A列有数据的最后一行
Range("C" & i) = Range("A" & i) + Range("B" & i)
Next i
End Sub
更多追问追答
追问
谢谢大神细心指导 我还想问下 路径参数怎么设置 比如自动读取E:\文件夹\a.txt 如何在用宏的时候把E:\文件夹变为手动输入 而且所有的宏都使用这个输入的路径
追答
读取文本文件?要提示分用什么作隔符啊。
Sub c()
Dim str$
str = VBA.InputBox("请输入你要打开文件路径!", , "E:\文件夹\")
If Len(str) = 0 Then Exit Sub
Workbooks.OpenText Filename:=str & "a.txt", Origin:=936, StartRow:=1, _
DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter _
:=True, Tab:=True, Space:=True, FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:= _
True
End Sub
但是上面的A.TXT又是固定的啊。只能打开名字为A的文本文件。
展开全部
要想学得快,自己录制一个选定区域删除的过程,逐行看代码,会进步很快,什么都问容易一知半解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1. 加个控件,点选时弹出对话框,让人手动输入想删除的内容,然后后面读进来就可以啦。
2.比较容易明白的办法是加个判断:
Public Sub dibu()
Dim i As Integer
For i = 1 To 20000
If Cells(i, 1) = "" Then
Exit For
End If
Next i
Cells(1, 2) = i
End Sub
这样算出来的 i 就是第1列最后一行了。
2.比较容易明白的办法是加个判断:
Public Sub dibu()
Dim i As Integer
For i = 1 To 20000
If Cells(i, 1) = "" Then
Exit For
End If
Next i
Cells(1, 2) = i
End Sub
这样算出来的 i 就是第1列最后一行了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |