ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 如何根据人名查询,并显示照片?

如何根据人名查询,并显示照片?

作者:绿色风 分类: 时间:2022-08-18 浏览:111
楼主
研究研究
Q: 如何根据人名查询,并显示照片?

A: 由于有合并单元格,所以有些代码不能优化

 

  1. Sub 查询信息()
  2. If Range("d24") = "" Then
  3. MsgBox "开玩笑!没有身份证号"
  4. Exit Sub
  5. End If
  6. Dim A As Long, S As String
  7. S = Range("D24").Value
  8. With Sheets("数据库")
  9. A = WorksheetFunction.CountIf(.Range("AR:AR"), S)
  10. If A = 0 Then
  11. MsgBox "没找到以下身份证号码的信息" & vbCrLf & vbCrLf & " " & S
  12. Exit Sub
  13. Else
  14. Application.EnableEvents = False
  15. ActiveSheet.DrawingObjects.Select
  16. Selection.Delete
  17. Range("A1:U1").Select
  18. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\logo.JPG")
  19. Range("U5:U9").Select
  20. f = Dir(ThisWorkbook.Path & "\员工照片\" & Range("D24").Value & ".jpg")
  21. If Len(f) = 0 Then
  22. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\员工照片\" & "无.jpg")
  23. Else
  24. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\员工照片\" & Range("D24").Value & ".jpg")
  25. End If
  26. Range("H19:U28").Select
  27. f = Dir(ThisWorkbook.Path & "\身份证正面\" & Range("D24").Value & ".jpg")
  28. If Len(f) = 0 Then
  29. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\身份证正面\" & "无.jpg")
  30. Else
  31. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\身份证正面\" & Range("D24").Value & ".jpg")
  32. End If
  33. Range("H29:U38").Select
  34. f = Dir(ThisWorkbook.Path & "\身份证反面\" & Range("D24").Value & ".jpg")
  35. If Len(f) = 0 Then
  36. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\身份证反面\" & "无.jpg")
  37. Else
  38. ActiveSheet.Pictures.Insert (ThisWorkbook.Path & "\身份证反面\" & Range("D24").Value & ".jpg")
  39. End If
  40. A = Application.WorksheetFunction.Match(S, .Range("AR:AR"), 0)
  41. Range("J5") = .Range("A" & A)
  42. Range("D5") = .Range("B" & A)
  43. Range("R5") = .Range("C" & A)
  44. Range("D6") = .Range("D" & A)
  45. Range("J6 ") = .Range("E" & A)
  46. Range("R6") = .Range("F" & A)
  47. Range("D7") = .Range("G" & A)
  48. Range("J7") = .Range("H" & A)
  49. Range("R7") = .Range("I" & A)
  50. Range("D8") = .Range("J" & A)
  51. Range("J8") = .Range("K" & A)
  52. Range("R8") = .Range("L" & A)
  53. Range("D9") = .Range("M" & A)
  54. Range("J9") = .Range("N" & A)
  55. Range("R9") = .Range("O" & A)
  56. Range("D10") = .Range("P" & A)
  57. Range("J10") = .Range("Q" & A)
  58. Range("R10") = .Range("R" & A)
  59. Range("D11") = .Range("S" & A)
  60. Range("S11") = .Range("T" & A)
  61. Range("D12 ") = .Range("U" & A)
  62. Range("J12") = .Range("V" & A)
  63. Range("S12") = .Range("W" & A)
  64. Range("D13") = .Range("X" & A)
  65. Range("H13") = .Range("Y" & A)
  66. Range("O13") = .Range("Z" & A)
  67. Range("U13") = .Range("AA" & A)
  68. Range("A16") = .Range("AB" & A)
  69. Range("D16") = .Range("AC" & A)
  70. Range("F16") = .Range("AD" & A)
  71. Range("Q16") = .Range("AE" & A)
  72. Range("T16") = .Range("AF" & A)
  73. Range("A17") = .Range("AG" & A)
  74. Range("D17") = .Range("AH" & A)
  75. Range("F17") = .Range("AI" & A)
  76. Range("Q17") = .Range("AJ" & A)
  77. Range("T17") = .Range("AK" & A)
  78. Range("A18") = .Range("AL" & A)
  79. Range("D18") = .Range("AM" & A)
  80. Range("F18") = .Range("AN" & A)
  81. Range("Q18") = .Range("AO" & A)
  82. Range("T18") = .Range("AP" & A)
  83. Range("D21") = .Range("AQ" & A)
  84. Range("D24") = .Range("AR" & A)
  85. Range("D26") = .Range("AS" & A)
  86. Range("D28") = .Range("AT" & A)
  87. Application.EnableEvents = True
  88. End If
  89. End With
  90. Range("a1").Select
  91. End Sub



员工档案信息照片.rar
2楼
悠悠雨
人事可以用到噢

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap