Cómo crear un lector de vCard (archivo .vcf) con Excel VBA

Comparte ahora:

¿Alguna vez ha querido importar detalles de contacto de datos VCF a una hoja de Excel? Siga este artículo y cree su propio lector VCF que importaría datos de sus archivos VCF a hojas de cálculo de Excel

Descargar Ahora

Si desea comenzar a utilizar el software lo antes posible, puede:

Descargue el software ahora

De lo contrario, si desea hacer bricolaje, puede leer el contenido a continuación.

Preparemos la GUI

Preparemos la GUI para nuestra aplicación de lector VCF. En Sheet1 tenemos que crear un campo que contendrá la ruta completa de nuestro archivo VCF. En lugar de expandir el ancho de la celda, combine las celdas para crear este campo. Para permitir que los usuarios seleccionen el archivo VCF, agreguemos un botón "Examinar" a la hoja. Necesitamos un botón adicional para permitir a los usuarios importar los datos VCF. Vamos a nombrar este botón como "Importar".

La Hoja1 ahora se verá asíPrepare la GUI para nuestra aplicación de lector VCF

Preparemos la base de datos

Usaremos Sheet2 como base de datos. Todo lo que tiene que hacer es crear los encabezados de columna adecuados. Para este ejemplo, voy a importar el nombre y la organización de VCF. Así que agregué los encabezados de columna "Nombre" en la columna A y "Organización" en la columna B.

Sheet2 ahora se verá asíUsando Sheet2 como base de datos

Hagámoslo funcional

Ahora hemos desarrollado el Front-End para nuestra herramienta y nuestro siguiente paso es hacerlo funcional agregando scripts. Abra el editor de VBA y en el Módulo1 pegue el siguiente script.

Ahora regrese a Sheet1 y agregue el Sub "pickvcf" al botón "Examinar". Haga clic derecho en el botón "Importar" y asígnele la macro "importvcf". Guarde el archivo como archivo habilitado para macros y listo. Ahora ha desarrollado un lector VCF.

Vamos a probarlo

Haga clic en el botón "Examinar" para seleccionar su archivo VCF. Tan pronto como presione Aceptar en la ventana de exploración de archivos, podrá ver la ruta completa del archivo seleccionado que aparece en la Hoja1. Ahora haga clic en el botón "Importar" e inmediatamente verá el nombre y la información de la organización del contacto que aparece en Sheet2.

¿Cómo funciona?

Este script tiene dos Subs. Sub "pickvcf" es para permitir a los usuarios navegar y seleccionar su archivo VCF y el sub "importvcf" es para leer e importar datos de VCF en un archivo de Excel.

Modificarlo

A partir de ahora, el script importa la información de Nombre y Organización desde el archivo VCF. Puede modificar fácilmente el script para importar otra información como dirección, teléfono, fax y correo electrónico. También puede modificar el script para leer varios archivos VCF en una carpeta e importarlos en un proceso por lotes.

Este script funciona bien si su Excel no está dañado. Sin embargo, si tienes un archivo de Excel dañado y desea repararlo, puede utilizar herramientas de recuperación de Excel como DataNumen Excel Repair.

Script

Sub pickvcf()
    Dim fd As Office.FileDialog
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
    With fd
        .AllowMultiSelect = False
        .Title = "Please select the file."
        .Filters.Clear
        .Filters.Add "VCF", "*.vcf"
        If .Show = True Then
            txtFileName = .SelectedItems(1)
            Sheets("Sheet1").Range("F8").Value = txtFileName
        End If
    End With
End Sub

Sub Importvcf()
    Dim fileName As String, textData As String, textRow As String, fileNo As Integer
    fileName = Sheets("Sheet1").Range("F8").Value
    fileNo = FreeFile
    r = 2
    Open fileName For Input As #fileNo
    Do While Not EOF(fileNo)
        Line Input #fileNo, textRow
        If Left(textRow, 3) = "FN:" Then
            Sheets("Sheet2").Range("A" & r).Value = Replace(textRow, "FN:", "")
        End If
        If Left(textRow, 4) = "ORG:" Then
            Sheets("Sheet2").Range("B" & r).Value = Replace(textRow, "ORG:", "")
        End If
    Loop
    Close #fileNo
End Sub

Introducción del autor:

Nick Vipond es un experto en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo reparar doc y productos de software de recuperación de Outlook. Para más información visite www.datanumen.com

Comparte ahora:

Los comentarios están cerrados.