Compartir a través de


Método Attachment.Delete (Publisher)

Elimina un objeto Attachment de la colección Attachments de un mensaje de combinación de correo electrónico.

Sintaxis

expresión. Borrar

expresión Variable que representa un objeto Attachment .

Observaciones

El método Delete lleva a cabo una operación irreversible en la colección Attachments. Llama a IUnknown.Release en referencia de la colección al objeto Attachment. Si tiene otra referencia a los datos adjuntos, aún se pueden obtener acceso a sus propiedades y métodos, pero nunca podrá volver a asociarlo con ninguna colección, porque el método Add siempre crea un nuevo objeto. Use la palabra clave Set para establecer la variable de referencia en Nothing o en otro objeto attachment.

La versión final del objeto Attachment tiene lugar cuando se asigna la variable de referencia a Nothing, o cuando se llama a Eliminar, si tener ninguna otra referencia. En este momento, el objeto se ha quitado de la memoria. Si se intenta obtener acceso a un objeto liberado, devuelve el error de objeto de datos de colaboración de Microsoft CdoE_INVALID_OBJECT.

Cuando se elimina un miembro de una colección, la colección se actualiza inmediatamente, lo que significa que su propiedad Count se reduce en uno y sus miembros se vuelven a indizar. Para tener acceso al miembro que anteriormente seguido al miembro eliminado de la colección, se debe utilizar su nuevo valor de índice.

Para eliminar todos los datos adjuntos del mensaje de combinación de correo electrónico actual, use el método ClearAll de la colección Attachments .

Ejemplo

La siguiente macro de Microsoft Visual Basic para Aplicaciones (VBA) muestra cómo eliminar los datos adjuntos al mensaje en una combinación de correo electrónico. El código elimina los datos adjuntos en la primera posición de índice de la colección de datos adjuntos y, a continuación, imprime el nombre de los datos adjuntos eliminados y el número de datos adjuntos actuales para el mensaje en la ventana inmediato.

Antes de ejecutar este código, asegúrese de que haya al menos un archivo adjunto en el mensaje de combinación de correo electrónico actual.

Public Sub Delete_Example() 
 
 Dim pubAttachments As Publisher.Attachments 
 Dim pubAttachment As Publisher.Attachment 
 
 Dim pubMailMerge As Publisher.MailMerge 
 Dim pubEmailMergeEnvelope As Publisher.EmailMergeEnvelope 
 
 Set pubMailMerge = ThisDocument.MailMerge 
 Set pubEmailMergeEnvelope = pubMailMerge.EmailMergeEnvelope 
 Set pubAttachments = pubEmailMergeEnvelope.Attachments 
 
 Set pubAttachment = pubAttachments(1) 
 Debug.Print pubAttachments.Count 
 Debug.Print pubAttachment.Name 
 
 pubAttachment.Delete 
 
End Sub

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.