教你如何将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