Как да създадете четец на vCard (.vcf файл) с Excel VBA

Споделете сега:

Искали ли сте някога да импортирате данни за контакт от VCF данни в лист на Excel? Следвайте тази статия и създайте свой собствен VCF четец, който ще импортира данни от вашите VCF файлове в работни листове на Excel

Свали сега

Ако искате да start, за да използвате софтуера възможно най-скоро, тогава можете:

Изтеглете софтуера сега

В противен случай, ако искате да си направите сам, можете да прочетете съдържанието по-долу.

Нека подготвим GUI

Нека подготвим GUI за нашето приложение за четец VCF. На Sheet1 трябва да създадем поле, което да съдържа пълния път на нашия VCF файл. Вместо да разширявате ширината на клетката, обединете клетките, за да създадете това поле. За да позволим на потребителите да изберат VCF файла, нека добавим бутон „Преглед“ към листа. Нуждаем се от допълнителен бутон, който да позволи на потребителите да импортират данните от VCF. Нека наречем този бутон като „Импортиране“.

Sheet1 сега ще изглежда такаПодгответе GUI за нашето приложение VCF Reader

Нека подготвим базата данни

Ще използваме Sheet2 като база данни. Всичко, което трябва да направите, е да създадете подходящи заглавки на колони. За този пример ще импортирам име и организация от VCF. Така че добавих заглавки на колони „Име“ в колона А и „Организация“ в колона Б.

Sheet2 сега ще изглежда такаИзползване на Sheet2 като база данни

Нека го направим функционален

Сега разработихме Front-End за нашия инструмент и следващата ни стъпка е да го направим функционален чрез добавяне на скриптове. Отворете редактора на VBA и в Module1 поставете скрипта по-долу.

Сега се върнете към Sheet1 и добавете Sub “pickvcf” към бутона “Browse”. Щракнете с десния бутон върху бутона „Импортиране“ и му задайте макроса „importvcf“. Запазете файла като файл с активиран макрос и това е всичко. Вече сте разработили VCF четец.

Да го тестваме

Щракнете върху бутона „Преглед“, за да изберете вашия VCF файл. Веднага щом натиснете Ok в прозореца за преглед на файлове, можете да видите пълния път на избрания файл, който се появява на Sheet1. Сега щракнете върху бутона „Импортиране“ и веднага ще видите информацията за името и организацията на контакта, която се появява на Sheet2.

Как работи?

Този скрипт съдържа два Subs. Под “pickvcf” е да позволи на потребителите да разглеждат и избират своя VCF файл, а под “importvcf” е да четат и импортират данни от VCF във файл на Excel.

Модифицирайте го

Към момента скриптът импортира име и информация за организацията от VCF файла. Можете лесно да модифицирате скрипта, за да импортирате друга информация като адрес, телефон, факс и имейл. Можете също така да промените скрипта, за да чете множество VCF файлове в папка и да ги импортирате в групов процес.

Този скрипт работи добре, ако вашият Excel не е повреден. Ако обаче имате повреден файл на Excel и искате да го поправите, можете да използвате инструменти за възстановяване на Excel като DataNumen Excel Repair.

Сценарий

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

Въведение на автора:

Ник Випонд е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително ремонт док и перспектива за възстановяване на софтуерни продукти. За повече информация посетете WWW.datanumen.com

Споделете сега:

Коментарите са забранени.