Expand IntroducciónIntroducción
Expand AdministraciónAdministración
Expand Interfaz de usuarioInterfaz de usuario
Collapse Conceptos básicos de SOLIDWORKSConceptos básicos de SOLIDWORKS
Expand Migrar de 2D a 3DMigrar de 2D a 3D
Expand EnsamblajesEnsamblajes
Expand CircuitWorksCircuitWorks
Expand ConfiguracionesConfiguraciones
Expand SOLIDWORKS CostingSOLIDWORKS Costing
Expand Design CheckerDesign Checker
Expand Estudios de diseño en SOLIDWORKSEstudios de diseño en SOLIDWORKS
Expand Dibujos y documentaciónDibujos y documentación
Expand DFMXpressDFMXpress
Expand DriveWorksXpressDriveWorksXpress
Expand FloXpressFloXpress
Expand Intercambio de datos SLDXMLIntercambio de datos SLDXML
Expand Importación y exportaciónImportación y exportación
Expand Visualización de modeloVisualización de modelo
Expand Diseño de moldesDiseño de moldes
Expand Estudios de movimientoEstudios de movimiento
Expand Piezas y operacionesPiezas y operaciones
Expand RoutingRouting
Expand Chapa metálicaChapa metálica
Expand SimulationSimulation
Expand SimulationXpressSimulationXpress
Expand CroquizadoCroquizado
Expand SOLIDWORKS MBDSOLIDWORKS MBD
Expand SOLIDWORKS UtilitiesSOLIDWORKS Utilities
Expand SOLIDWORKS SustainabilitySOLIDWORKS Sustainability
Expand ToleranciasTolerancias
Expand TolAnalystTolAnalyst
Expand ToolboxToolbox
Expand Piezas soldadasPiezas soldadas
Expand Workgroup PDMWorkgroup PDM
Expand Solución de problemasSolución de problemas
Glosario
Ocultar tabla de contenido

Creación de una plantilla de macro de SOLIDWORKS

Una plantilla de macro de SOLIDWORKS es una macro de SOLIDWORKS que le permite especificar los valores de parámetros cuando la programa como tarea personalizada en el programador de tareas de SOLIDWORKS. Una plantilla de macro de SOLIDWORKS es un archivo de texto que suele contener código Visual Basic, llamadas de la API de SOLIDWORKS y nombres de señal. Cuando se programa una plantilla de macro de SOLIDWORKS para que ejecute una tarea personalizada en el programador de tareas de SOLIDWORKS, se especifican los valores de parámetros para sustituir los nombres de señal.

Los nombres de señal pueden ser cadenas de texto o numéricas. Están formateados como se indica:

Tipo de parámetro Formato del nombre de señal
Cadena $$$<nombre_señal>$$$
Número ###<nombre_señal>###

Una plantilla de macro de SOLIDWORKS debe tener una extensión de nombre de archivo .swb.

Para crear una plantilla de macro:

  1. Abra un archivo de texto por medio del Bloc de notas de Windows, WordPad de Microsoft u otro editor de texto.
  2. Copie y pegue una macro de SOLIDWORKS en el archivo de texto.
    Consulte Temas de ayuda de API y de complementos de SOLIDWORKS para obtener información sobre los archivos de macro de SOLIDWORKS.
  3. Escriba los nombres de señal en lugar de los parámetros cuyos valores quiere especificar. Por ejemplo:
    Código original: swApp.SetCurrentWorkingDirectory "c:\temp"
    Código modificado: swApp.SetCurrentWorkingDirectory $$$TASK_WORKING_DIR$$$
  4. Guarde el archivo de texto con una extensión de nombre de archivo .swb.
    Cree una copia de seguridad de la plantilla de macro de SOLIDWORKS antes de programarla y ejecutarla, o almacene el archivo de la plantilla de macro de SOLIDWORKS en una ubicación diferente al directorio de trabajo para tareas. Haga clic en Ver > Opciones > Opciones de tarea para ver el directorio de trabajo para tareas. Cuando se ejecuta una tarea que utiliza una plantilla de macro de SOLIDWORKS, el sistema crea una copia de la plantilla de macro y reemplaza los nombres de señal con los valores de parámetros que se especificaron al programar la tarea. El sistema guarda el archivo en el directorio de trabajo para tareas con el mismo nombre que la plantilla de macro original de SOLIDWORKS. Si la plantilla de macro original de SOLIDWORKS se almacena en el directorio de trabajo para tareas, el sistema la sobrescribe con el nuevo archivo.
    El siguiente código es un ejemplo de una plantilla de macro de SOLIDWORKS. Abre un documento de dibujo de SOLIDWORKS y lo guarda como un archivo DXF. Cuando se programa una plantilla de macro como una tarea personalizada en el programador de tareas de SOLIDWORKS, se especifican los parámetros para sustituir los nombres de señal: $$$TASK_WORKING_DIR$$$, $$$TASK_FILE_TYPE$$$, $$$TASK_FILEPATH_NAME$$$ y $$$TASK_FILE_NAME$$$.
    Dim swApp As Object Dim swModel As Object Dim ret As Boolean Dim dummyRet As Long Dim longstatus As Long Dim errorFilePath As String Dim nErrors As Long Dim nWarnings as Long Sub main() errorFilePath = $$$TASK_WORKING_DIR$$$ + "\" + "swTaskScheduler.error" ErrorOut "Start logging any errors...", errorFilePath Set swApp = CreateObject("SldWorks.Application") swApp.SetCurrentWorkingDirectory $$$TASK_WORKING_DIR$$$ ' Determine el tipo de documento longstatus = 0 ' $$$TASK_FILE_TYPE$$$ is case-sensitive! Debe introducir SW_DRAWING_TYPE o SW_DRAWING_TYPE_OLD If ($$$TASK_FILE_TYPE$$$ = "SW_DRAWING_TYPE" OR $$$TASK_FILE_TYPE$$$ = "SW_DRAWING_TYPE_OLD") Then Set swModel = swApp.OpenDoc6 ($$$TASK_FILE_PATHNAME$$$, 3, 1, "", dummyRet, longstatus) ErrorOut "File is a drawing document.", errorFilePath Else ErrorOut "File is not a drawing document.", errorFilePath End If ret = True ' Si el documento es de solo lectura, está bloqueado o está en modo solo vista, registre un error If (longstatus And 2) Then ErrorOut "El archivo es de solo lectura.", errorFilePath ret = False ElseIf (longstatus And 4) Then ErrorOut "El archivo está bloqueado por otro usuario.", errorFilePath ret = False ElseIf (longstatus And 512) Then ErrorOut "El archivo es de solo lectura.", errorFilePath ret = False End If ' Close the document if read-only, locked, or view-only If (ret = False) Then Set swModel = Nothing swApp.CloseDoc $$$TASK_FILE_NAME$$$ End If Set swModel = swApp.ActivateDoc ($$$TASK_FILE_NAME$$$) If Not swModel Is Nothing Then ' If document is a drawing, then... If ($$$TASK_FILE_TYPE$$$ = "SW_DRAWING_TYPE" OR $$$TASK_FILE_TYPE$$$ = "SW_DRAWING_TYPE_OLD") Then ' Strip off SOLIDWORKS drawing file extension (.slddrw) ' and add DXF file extension (.dxf) sPathName = swModel.GetPathName sPathName = Left(sPathName, Len(sPathName) - 6) sPathName = sPathName + "dxf" ' Save as file as DXF bRet = swModel.SaveAs4(sPathName, swSaveAsCurrentVersion, swSaveAsOptions_Silent, nErrors, nWarnings) End If Else ErrorOut "El documento no se ha abierto o no se ha podido abrir.", errorFilePath End If ' Exit the SOLIDWORKS software swApp.ExitApp Set swApp = Nothing End Sub Function ErrorOut(errorString As String, errorFilePath As String) Open errorFilePath For Append As #5 Print #5, errorString Close #5 End Function 


Proporcione comentarios sobre este tema

SOLIDWORKS agradece sus comentarios acerca del formato, la precisión y la rigurosidad de la documentación. Utilice el siguiente formulario para enviar comentarios y sugerencias sobre este tema directamente al equipo de documentación. Nota: el equipo de documentación no puede responder a preguntas técnicas. Haga clic aquí para ver información sobre soporte técnico.

* Obligatorio

 
*Correo electrónico:  
Asunto:   Comentarios sobre los temas de la ayuda
Página:   Creación de una plantilla de macro de SOLIDWORKS
*Comentario:  
*   Por la presente confirmo que he leído y acepto la política de privacidad en virtud de la cual Dassault Systèmes usará mis Datos personales

Imprimir tema

Seleccione el ámbito del contenido que desee imprimir:

x

Hemos detectado que la versión de su explorador es anterior a Internet Explorer 7. Para una visualización óptima, le recomendamos que actualice a Internet Explorer 7 o versión superior.

 No volver a mostrar este mensaje
x

Versión del contenido de la ayuda web: SOLIDWORKS 2017 SP05

Para desactivar la ayuda web desde SOLIDWORKS y utilizar la ayuda local en su lugar, haga clic en Ayuda > Usar la ayuda web de SOLIDWORKS.

Para informar sobre problemas detectados con la interfaz y la función de búsqueda de la ayuda web, póngase en contacto con el representante local de soporte. Si desea proporcionar comentarios sobre temas individuales, utilice el vínculo “Comentarios sobre este tema” en la página del tema en cuestión.