Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Obtenga información sobre cómo agregar un objeto automation mediante el enlace en tiempo de ejecución y cómo establecer una referencia para el enlace anticipado en tiempo de diseño.
Use un identificador de programación OLE (a veces denominado ProgID) para crear un objeto de automatización para el enlace en tiempo de ejecución. Por ejemplo, si Project y Word están instalados en el equipo, la siguiente macro de Project crea un documento de Word denominado Doc1.docx y, a continuación, abre el cuadro de diálogo Guardar como en Word.
Sub CreateWordDoc_Late()
Dim wdDoc As Object
Set wdDoc = CreateObject("Word.Document")
wdDoc.Save
End Sub
Nota Los objetos creados mediante ProgID tienen enlace en tiempo de ejecución; por lo tanto, no puede ver los miembros del objeto disponibles al escribir código en el VBE. Los objetos enlazados en tiempo de ejecución también tienen un rendimiento menor que los objetos creados con enlace anticipado en tiempo de diseño.
La siguiente macro funciona mejor y realiza el mismo trabajo que la macro CreateWordDoc_Late . La macro CreateWordDoc_Early requiere que agregue una referencia a la biblioteca de objetos de Microsoft Word 15.0. En el menú Herramientas , elija Referencias para abrir el cuadro de diálogo Referencias - Proyecto de VBA .
Sub CreateWordDoc_Early()
Dim wdDoc As Word.Document
Set wdDoc = New Word.Document
wdDoc.Save
End Sub
A continuación se muestra un ejemplo de uso del enlace anticipado para crear una hoja de cálculo de Excel. Establezca una referencia a La biblioteca de objetos de Microsoft Excel 15.0.
Sub CreateExcelWorkbook_Early()
Dim xlApp As Excel.Application
Dim xlWorkbook As Excel.Workbook
Dim xlWorksheet As Excel.Worksheet
Set xlApp = Excel.Application
xlApp.Visible = True
Set xlWorkbook = xlApp.Workbooks.Add
Set xlWorksheet = xlWorkbook.Worksheets(1)
xlWorksheet.Cells(1, 1).Value = "Data from Project"
xlWorksheet.SaveAs ("C:\Project\VBA\ProjectWorksheet.xlsx")
xlWorkbook.Close
xlApp.Visible = False
End Sub
Para obtener información sobre el uso de Project desde otra aplicación, el enlace en tiempo de ejecución y el enlace anticipado, vea el objeto Application .
En las tablas siguientes se enumeran los identificadores de programación OLE para los controles ActiveX y varias aplicaciones de Microsoft Office.
Nota En lugar de usar los valores de ProgId para el enlace en tiempo de ejecución, se recomienda establecer una referencia a la biblioteca de objetos equivalente y usar el enlace anticipado.
Controles ActiveX
Para crear los controles ActiveX que se indican en la tabla siguiente, utilice el identificador programático OLE correspondiente. Al insertar un formulario de usuario, Project establece una referencia a Microsoft Forms biblioteca de objetos 2.0 para el enlace anticipado.
Para crear este control | Use este identificador |
---|---|
Casilla | Forms.CheckBox.1 |
ComboBox | Forms.ComboBox.1 |
Commandbutton | Forms.CommandButton.1 |
Frame | Forms.Frame.1 |
Imagen | Forms.Image.1 |
Etiqueta | Forms.Label.1 |
Listbox | Forms.ListBox.1 |
Multipage | Forms.MultiPage.1 |
Optionbutton | Forms.OptionButton.1 |
Scrollbar | Forms.ScrollBar.1 |
SpinButton | Forms.SpinButton.1 |
Tabstrip | Forms.TabStrip.1 |
TextBox | Forms.TextBox.1 |
Togglebutton | Forms.ToggleButton.1 |
Microsoft Access
Para crear los objetos de Access enumerados en la tabla siguiente, use uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de Access que esté disponible en el equipo donde se está ejecutando la macro. Para el enlace anticipado, establezca una referencia a La biblioteca de objetos de Microsoft Access 15.0.
Para crear este objeto | Use uno de estos identificadores |
---|---|
Aplicación | Access.Application, Access.Application.15 |
CurrentData | Access.CodeData, Access.CurrentData |
CurrentProject | Access.CodeProject, Access.CurrentProject |
DefaultWebOptions | Access.DefaultWebOptions |
Microsoft Excel
Para crear los objetos de Excel enumerados en la tabla siguiente, use uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de Excel que esté disponible en el equipo donde se está ejecutando la macro. Para el enlace anticipado, establezca una referencia a La biblioteca de objetos de Microsoft Excel 15.0.
Para crear este objeto | Utilice uno de estos identificadores | Comentarios |
---|---|---|
Aplicación | Excel.Application, Excel.Application.15 | |
Libro de trabajo | Excel.AddIn | |
Libro de trabajo | Excel.Chart, Excel.Chart.8 | Devuelve un libro que contiene dos hojas de cálculo: una para el gráfico y otra para sus datos. La hoja del gráfico es la hoja activa. |
Libro de trabajo | Excel.Sheet, Excel.Sheet.12 | Devuelve un libro con una hoja de cálculo. |
Graph
Para crear los objetos graph enumerados en la tabla siguiente, use uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de Graph que esté disponible en el equipo donde se está ejecutando la macro. Para el enlace anticipado, establezca una referencia a La biblioteca de objetos de Graph 15.0.
Para crear este objeto | Use uno de estos identificadores |
---|---|
Aplicación | MSGraph.Application, MSGraph.Application.8 |
Gráfico | MSGraph.Chart, MSGraph.Chart.8 |
Microsoft Office Web Components.
Nota El componente web de Microsoft Office (OWC) está en desuso y no está instalado con Project.
Microsoft Outlook
Para crear el objeto de Microsoft Outlook que se muestra en la tabla siguiente, use uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de Outlook que esté disponible en el equipo donde se está ejecutando la macro. Para el enlace anticipado, establezca una referencia a La biblioteca de objetos de Microsoft Outlook 15.0.
Para crear este objeto | Use uno de estos identificadores |
---|---|
Aplicación | Outlook.Application, Outlook.Application.15 |
Microsoft PowerPoint
Para crear los objetos de Microsoft PowerPoint enumerados en la siguiente tabla, utilice uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de PowerPoint que esté disponible en el equipo donde se está ejecutando la macro. Para el enlace anticipado, establezca una referencia a la biblioteca de objetos de Microsoft PowerPoint 15.0.
Para crear este objeto | Use uno de estos identificadores |
---|---|
Aplicación | PowerPoint.Application, PowerPoint.Application.15 |
Microsoft Word
Para crear los objetos de Microsoft Word enumerados en la siguiente tabla, utilice uno de los identificadores de programación OLE correspondientes. Si usa un identificador sin un sufijo de número de versión, se creará un objeto en la versión más reciente de Word que esté disponible en el equipo donde se está ejecutando la macro. Word.Document.8 y Word.Document.12 crean un documento con el formato Open XML predeterminado (.docx). Para el enlace anticipado, establezca una referencia a La biblioteca de objetos de Microsoft Word 15.0.
Para crear este objeto | Use uno de estos identificadores |
---|---|
Aplicación | Word.Application, Word.Application.14 |
Documento | Word.Document, Word.Document.8, Word.Template.8, Word.Document.12, Word.Template.12 |
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.