-1

我正在创建一个应该向用户询问文件的 VBA,然后复制第一张工作表的内容(工作表名称不是默认值,并且包含一个空格).. 之后我需要删除特定的列.. 从我需要的行中删除包含特定文本的行(区分大小写)

我现在所能做的就是加载文件,但不知道如何将数据复制到活动工作表!

FileToOpen = Application.GetOpenFilename _
(Title:="Please Choose the RTCM File", _
FileFilter:="Excel Files *.xls (*.xls),")
''
If FileToOpen = False Then
MsgBox "No file specified.", vbExclamation, "Duh!!!" ' Notification that nothing is chosen
Exit Sub
Else ' Load the file, copy the first sheet and paste it in active sheet ...

End If
4

1 回答 1

0

希望这可以帮助。此代码会将数据粘贴到已经处于活动状态的工作表中。如果要将数据粘贴到特定工作表中,可以用 Sheets("Sheetname") 替换 Activesheet。

我假设被粘贴的数据只会从 A 列到 Z 列,请根据需要进行更改。

FileToOpen = Application.GetOpenFilename _
(Title:="Please Choose the RTCM File", _
FileFilter:="Excel Files *.xls (*.xls),")

If FileToOpen = False Then
    MsgBox "No file specified.", vbExclamation, "Duh!!!" ' Notification that nothing is chosen
    Exit Sub
Else ' Load the file, copy the first sheet and paste it in active sheet ...
    ThisWorkbook.Activate
    ThisWorkbook.ActiveSheet.Range("A1:Z65536").ClearContents
    Workbooks(FileToOpen).Activate
    lrow=Workbooks(FileToOpen).Sheets("Sheet1").Cells(65536,1).End(xlUp).Row
    Workbooks(FileToOpen).Sheets("Sheet1").Range("A1:Z" & lrow).Copy
    ThisWorkbook.Activate
    ThisWorkbook.ActiveSheet.Range("A1").PasteSpecial xlPasteValues
End If
于 2013-01-31T09:22:57.813 回答