|
发表于 2012-12-27 12:59
|
显示全部楼层
本楼为最佳答案
本帖最后由 redsheep 于 2012-12-27 13:03 编辑
- Sub 备份()
- Application.ScreenUpdating = False
- Dim ms As Integer
- ms = MsgBox("是否保存")
- If ms = 7 Then Exit Sub
-
- Route = Trim(InputBox("请输入保存路径:" & Chr(13) & "不输入时默认为 C:\桌面\ ", "保存路径"))
- If Route = "" Then
- Route = "C:\桌面"
- End If
- If Right(Route, 1) <> "" Then
- Route = Route & ""
- End If
-
- Dim wb As Workbook
- With ThisWorkbook.Worksheets("A")
- Set wb = Workbooks.Add
- .Cells.Copy
- wb.Worksheets(1).[A1].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
- wb.SaveAs Route & .[B2]
- ActiveWindow.Close
- End With
- Range("F4").Select
- Application.ScreenUpdating = True
- End Sub
复制代码 献丑了 关于只复制值,我想到了选择性粘贴-数值 录制的宏里是 PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 就加上了,貌似能实现
关于提示路径,我想到的是用InputBox() 第一个if是让不输入的时候默认为桌面 第二个if是最右边没有"\"的时候添加一个\ 所以输入的时候 c:\桌面 或者 c:\桌面\ 都OK |
|