趣百科

教你如何将excel转换成vCard(excel转vcf)

编辑:Simone 2024-09-05 23:53:55 571 阅读

教你如何将excel转换成vCard(excel转vcf)

你是否想往Iphone(或其他手机)里面批量导入联系人,或者把通讯录里的联系人重新编辑后批量导入?此文可批量生成vcf文件,即批量生成vCard文件,本文测试环境是iphone,其余手机应该也行,可自行测试;

1、先准备好联系人总亲,将准备好的联系人填入表格中,如下图所示:

2、表格中从F列开巨阅始往后,是可以自己任意添加的,除去表头,内容部分必须是数字,也就是说只能填电话号码之类的。可以空这不填,也可以填。A列是必须要填的。

3、接着点击“生成vCard”,将在桌面生成一个以“通讯录”开头,已日期命名的.vcf文件。

4、然后通过浏览器,登录Icloud,找到“通讯录”

5、在珠茄川通讯录的左下角,找到“齿轮”一样的设置图标,点击弹出子菜单,在子菜单找到“导入vCared...”

6、在弹出的框中,选中生成在桌面的“通讯录....vcf”文件,至此,批量导入通讯到iphone的操作完毕。

1、新建一个空白Excel,然后将其另存为(.xlsm)格式,该模式可启用宏。

2、另存为之后,回到excel,在顶部菜单栏依次点击“开发工具”→“Visual Basic”,或者直接按快捷键“Alt+F11”;

3、在左侧,双击Sheet1(Sheet1),并把下面的代码复制到右侧空白处:

4、代码:

'通过ICloud导入通讯录,此文件可批量生成导入的VCF文件Public Sub 生成通讯录vCard文件() Dim gPath As String Dim sFile As Object, Fso As Object Dim tmpStr As String Dim lastRowA, lastColumn1 As Integer Dim i, j As Integer Dim t As Date Dim msgresult As VbMsgBoxResult msgresult = MsgBox("是否生成表头?", vbYesNoCancel, "生成vCard文件(*.vcf)")

If msgresult = vbYes Then '生成表头 Range("A1") = "姓氏" Range("b1") = "名字" Range("c1") = "公司名称" Range("d1") = "电话" Range("f1") = "短号" Range("g1") = "座机" Range("g1") = "其他号码" MsgBox "表头生成完毕,请填完内容后重新点击按钮,并选择[否],开始生成vCard文件" ElseIf msgresult = vbNo Then '将生成vCard文件 t = Now() '计时 lastRowA = Range("A1000000").End(xlUp).Row lastColumn1 = Range("XX1").End(xlToLeft).Column gPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") Set Fso = CreateObject("Scripting.FileSystemObject") Set sFile = Fso.CreateTextFile(gPath & "/" & Format(Now(), "通讯录YYYYMMDDHHmmSS") & ".vcf", True, True) For i = 2 To lastRowA tmpStr = "BEGIN:VCARD" & vbCrLf & "VERSION:3.0" & vbCrLf tmpStr = tmpStr + "N:" & Cells(i, 2) & ";" & Cells(i, 1) & ";;;" & vbCrLf '名字 姓氏 tmpStr = tmpStr + "FN:" & Cells(i, 1) & " " & Cells(i, 2) & ";" & vbCrLf '全名 tmpStr = tmpStr + "ORG:" & Cells(i, 3) & ";" & vbCrLf '公司名称 tmpStr = tmpStr + "TEL;TYPE=CELL;TYPE=pref;TYPE=VOICE:" & Cells(i, 4) & vbCrLf '扩展其他号码 For j = 6 To lastColumn1 If Cells(i, j) <> "" Then tmpStr = tmpStr + "item" & j - 5 & ".TEL:" & Cells(i, j).Value & vbCrLf & "item" & j - 5 & ".X-ABLabel:" & Cells(1, j) & vbCrLf End If Next tmpStr = tmpStr + "END:VCARD" & vbCrLf sFile.WriteLine (tmpStr) Next sFile.Close Set sFile = Nothing Set Fso = Nothing MsgBox "耗时:" & DateDiff("s", t, Now()) & "秒" & vbCrLf & "通讯录已生成在桌面,接着请登录ICloud导入。", vbOKOnly, "胖猫提示::" End IfEnd Sub

5、填好代码之后,按Ctrl+S保存一下,然后关闭当前窗口回到excel,在顶部菜单栏点击“视图”→“宏”→“生成通讯录vCard文件”:

6、此处会有一个提示框,提示是否生成表头,如果你没有表头,就点是,如果文件做好了,你就点否:

7、假设你什么都没开始做,那么就找一个空白的sheet,是否生成表头,此处点击是。则自动生成好表头,生成完毕之后,就可以把自己要导入的联系人信息填写好:

8、信息都填完了之后,再次点击顶部菜单栏点击“视图”→“宏”→“生成通讯录vCard文件”,此时弹出提示框就点击【否】,就可以在桌面找到生成好的vCard文件了。最后按照上面的操作导入iphone就可以了。

版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/life/3444.html

相关推荐