VBA合并工作表中保存文件和如何改成路径选择

Dim x As Integer
Dim y As Integer

Dim Rng As String
Dim st As Range
x = InputBox("Start from which tab?")

y = InputBox("End at which tab?")
Rng = InputBox("Input the Range: (e.p: A1:D12)", "select the range", "A1:A1") '把选择范围的时候变成可以返回到范围最大的工作表当中选择范围,而不是手动输入
Set st = Range(Rng)

For m = x To y

n = Sheets(m).[a65536].End(xlUp).Row

o = Sheets(1).[a65536].End(xlUp).Row

Sheets(m).Select

Range(Rng).Select
Range("a" & n).Activate

Selection.Copy
Sheets(1).Select
Range("a" & o + 1).Select

ActiveSheet.Paste

Next

sFilePath = InputBox("Where to save?") '改成像平时保存文件一样选择保存路径
If sFilePath & "" = "" Then End
End Sub

用Application.GetSaveAsFilename方法:

sFilePath = Application.GetSaveAsFilename(filefilter:="Excel å·¥ä½œç°¿,*.xlsx,Excel 97-2003 å·¥ä½œç°¿,*.xls,文本文件,*.txt")

会弹出Excel的另存为对话框,用户输入文件名后,按下确定会返回文件的绝对路径,按下取消按钮则返回False

所以

If sFilePath & "" = "" Then End  这句要改为

If sFilePath & "" = "False" Then End
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-30
应该是将workbook对象进行另存为:workbook.save "这里填写路径"

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网