我是宏的新手。我想写一个宏,用excel将MPP中列中的特定数据复制到另一个列中。
我发现了一个代码,可以将数据从一个excel复制到另一个excel。请帮助
Option Explicit
Sub CopytoPS()
Dim sfil As String
Dim owbk As Workbook
Dim sPath As String
sPath = "C:UsersHYMCExcelTest" 'Change the file path for your purposes
sfil = Dir(sPath & "Management Report PS.xls")
Range("A2:I22").Copy
Set owbk = Workbooks.Open(sPath & sfil)
owbk.Sheets("Sales Data").Range("B65536").End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
owbk.Close True 'Save opened workbook and close
sfil = Dir
End Sub
我想将MPP中的某些列复制到Excel中的一组列中。我还希望用户只提供目标文件路径、源文件、要复制的源单元格和目标单元格
若要在Excel中使用MPP文件,请打开VBA编辑器,然后单击"工具"菜单上的"引用"。在"可用引用"列表中,单击以选中"Microsoft Project xx.xx对象库"复选框。如果未列出Microsoft Project 9.0对象库,请单击"浏览"查找MsprjXX.olb文件,该文件位于安装了Microsoft Project的文件夹中。默认位置为C:\Program Files\Microsoft Office\Office。单击"确定"关闭"参照"对话框。然后使用此代码。
由于你没有提到你想复制什么以及具体在哪里,我会给你一个非常基本的代码,然后你可以工作。
'~~> Code to open MPP file in Excel
Sub Sample()
Dim appProj As MSProject.Application
Dim aProg As MSProject.Project
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ActiveWorkbook
'~~> This is the Sheet Where you want the data to be copied
Set ws = wb.Sheets("Sheet1")
Set appProj = CreateObject("Msproject.Application")
'~~> This is a MS Project File. Change path as applicable.
appProj.FileOpen "C:MS Project.mpp"
Set aProg = appProj.ActiveProject
appProj.Visible = True
'~~> Now you have the MPP file opened, rest of the code goes here
End Sub
prerna:你能不能也给我提供教程,学习在excel中使用的宏。这将对非常有帮助
你可以访问这个链接,这是一个良好的开端。但最终,这完全取决于你练习了多少:)
主题:录制并使用Excel宏
链接:http://office.microsoft.com/en-us/excel-help/record-and-use-excel-macros-HA001054837.aspx
有关宏的更多信息:
http://www.excel-vba.com/
http://www.excel-vba-easy.com/
http://www.mrexcel.com/articles.shtml