Как скопировать данные из файла MPP в Excel с помощью макроса - PullRequest
1 голос
/ 19 февраля 2012

Я новичок в макросах. Я хочу написать макрос для копирования определенных данных в столбцах MPP в другой файл с помощью Excel.

Я нашел код, который будет копировать данные из одного Excel в другой.help

Option Explicit

Sub CopytoPS()
    Dim sfil As String
    Dim owbk As Workbook
    Dim sPath As String

    sPath = "C:\Users\HYMC\Excel\Test\" '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 в набор cloumns в Excel. Я также хочу, чтобы пользователь просто указал путь к файлу назначения, исходный файл, исходные ячейки для копирования и целевые ячейки

1 Ответ

0 голосов
/ 19 февраля 2012

Для работы с файлом MPP в Excel откройте редактор 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

...