ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] ¨Ï¥ÎVBA¸óÀɮקì¨ú¦h­Ó¤u§@ªí¸Ìªº¸ê®Æ

¥»©«³Ì«á¥Ñ n7822123 ©ó 2018-9-3 02:14 ½s¿è

¦^´_ 1# ABK

§A¤W¶ÇªºÀÉ®×Ãa¤F¡A¥´¤£¶}!

³o¤£Ãø¡A¦p¤W¤@½g©Ò»¡¡A³Ð³y¦r¨åª«¥ó

§â¨ä¥¦¤u§@ªíªº½s¸¹&¼Æ¶q¿é¤J¶i¦r¨å

¦A¥Î¦r¨å¬d¸ß¥t¤@­ÓÀɮתº½s¸¹¡A¿é¤J¦r¨å¤¤ªº¼Æ¶q(item)§Y¥i

¥ý­«¤W¶Çªþ¥ó§a¡AÀ³¸Ó¤£·|¦³¤H¨º»ò¶Ô³ÒÀ°§A¥´¤@¤j¦ê¸ê®Æªº.....(µ{¦¡¬O»Ý­nÀÉ®×´ú¸Õªº)

©ÎªÌ§A¥ý¦X¨Ö¼Æ­Ó¤u§@ªí¦A¥Î VLookup ¨ç¼Æ§Y¥i!

¸Ü»¡§AÀ³¸Ó¬O¥ÍºÞ§a!!

:D
µ{¦¡¬O¨Ì»Ý¨D¼gªº¡A»Ý¨Dªí¹F¤£²M·¡
©ÎªÌ¨S¦³¤W¶Çªþ¥ó¡A·R²ö¯à§U

TOP

¦^´_ 5# ABK


   

§Ú¤£½T©w¬O§_¬O§ÚRARª©¥»¤ÓµLªk¥´¶}

§Ú¥i¥HÀH«K¥´­Ó½d¨Ò¡AÅý§A®M¥Î¬Ý¬Ý
µ{¦¡¬O¨Ì»Ý¨D¼gªº¡A»Ý¨Dªí¹F¤£²M·¡
©ÎªÌ¨S¦³¤W¶Çªþ¥ó¡A·R²ö¯à§U

TOP

¥»©«³Ì«á¥Ñ n7822123 ©ó 2018-9-3 23:50 ½s¿è

¦^´_ 6# n7822123


¥´¦n¤F¡A¥´§Aªºªí®æªá¤F¤£¤Ö®É¶¡(»P§Ú·Q­nÀH«K¥´¥´ªºªì°J¦³ÂI¤£²Å......)
ÀÉ®×&µ{¦¡½X¦p¤U¡A½Ð¦Û¦æ®M¥Î¡A¬JµM³£ªá®É¶¡¤F¡Aµù¸Ñ¤]À°§A¼g¦n(¦n¤H°µ¨ì©³?)
ªí®æ¦ì¸m»P¤u§@ªí¦WºÙ¤w¸gºÉ¶q»P§A¬Û¦P¡A
¦ý¬O¥i¯àÁÙ¬O¦³¤£¦Pªº¦a¤è¡A½Ð¦Û¦æ§ó§ï®M¥Î¡C
ªþ¥ó2­ÓÀɮשñ¦b¦P¤@¸ô®|¤U°õ¦æ§Y¥i(¤£¥i¦³¨ä¥LexcelÀÉ®×)
©ÎªÌ¿é¤J¸ê®Æªº¸ô®|&ÀɦWÅýµ{¦¡¥h§ì!

¥Í²£ºÞ²z½d¨Ò.rar (30.28 KB)
  1. Sub ¬d¸ß§ë²£¼Æ¶q()
  2. Dim ÀɦW$, ¸ô®|ÀɦW$, tt$, R&  '«Å§iÅܼÆ
  3. Application.ScreenUpdating = False '¿Ã¹õ§Y®É§ó·sÃö³¬
  4. Set Dy = CreateObject("scripting.dictionary")  '³]Dy¬°¦r¨åª«¥ó
  5. Path = ThisWorkbook.Path  '§ì¨ú¥»Àɮ׸ô®|
  6. Set ­n¶ñªºªí = ThisWorkbook.Sheets("2018¤T¼t¾÷¥x¥Í²£°lÂÜ") '©R¦W¦¹¤u§@ªí¬° "­n¶ñªºªí"
  7. '¦pªG[G5]¦³¸ê®Æ´N¨Ì[G5]¸ô®|ªºÀɮסA¦pªG¨S´N§ä¨ì´N§ä¦P¸ô®|¤Uªº¥t¤@­ÓexcelÀÉ
  8. If [G5] <> "" Then
  9.   ¸ô®|ÀɦW = [G5]
  10.   ÀɦW = Right(¸ô®|ÀɦW, Len(¸ô®|ÀɦW) - InStrRev(¸ô®|ÀɦW, "\"))
  11.   If Dir(¸ô®|ÀɦW) = "" Then MsgBox "¨Ì[G5]¿é¤Jªº¸ô®|»PÀɦW§ä¤£¨ìÀɮסA½ÐÀˬd¦³µL¿ù»~": Exit Sub
  12. Else
  13.   ÀɦW = Dir(Path & "\*.xls*")
  14.   If ÀɦW = ThisWorkbook.Name Then ÀɦW = Dir
  15.   ¸ô®|ÀɦW = Path & "\" & ÀɦW
  16. End If
  17. 'Àˬd¸ê®ÆÀɮ׬O§_¤w¶}±Ò
  18. For Each wb In Workbooks
  19.   If wb.Name = ÀɦW Then MsgBox "¸ê®ÆÀɮ׶}±Ò¤¤¡A½ÐÃö³¬": Exit Sub
  20. Next
  21. Set ¸ê®ÆÀÉ = Workbooks.Open(¸ô®|ÀɦW)  '¥´¶}¸ê®ÆÀɮסA¨Ã¥B©R¦W¬°"¸ê®ÆÀÉ"
  22. '³v¤@§â¤u§@ªíªº¥Í²£¥N½X»PÀY²£¼Æ¶q¿é¤J¨ì¦r¨åª«¥óDy¸Ì­±
  23. For Each ws In ¸ê®ÆÀÉ.Sheets
  24.   ws.Activate
  25.   If ws.[D1] <> "§ë²£¼Æ¶q" Then GoTo ¸õ¹L 'Àˬd¬O§_¬°­nªº¤u§@ªí
  26.   For R = 2 To ws.[A1].End(xlDown).Row
  27.     tt = Cells(R, 3): Dy(tt) = Cells(R, 4)
  28.   Next R
  29. ¸õ¹L:
  30. Next
  31. ­n¶ñªºªí.Activate '±Ò¥Î­n¶ñªºªí
  32. '³v¤@§â¦r¨åª«¥óDy¸Ì­±ªº­È¿é¤J¨ì¦¹¤u§@ªí(­n¶ñªºªí)
  33. For R = 2 To [A1].End(xlDown).Row
  34.   tt = Cells(R, 4)
  35.   Cells(R, 5) = Dy(tt)
  36. Next R
  37. Application.DisplayAlerts = False '¤£¸õ¥X½T»{°T®§
  38. '¦sÀÉÃö³¬+ÄÀ©ñ°O¾ÐÅé
  39. ¸ê®ÆÀÉ.Close True: Set ¸ê®ÆÀÉ = Nothing
  40. Set Dy = Nothing
  41. Application.ScreenUpdating = True '¿Ã¹õ§Y®É§ó·s¥´¶}
  42. End Sub
½Æ»s¥N½X
µ{¦¡¬O¨Ì»Ý¨D¼gªº¡A»Ý¨Dªí¹F¤£²M·¡
©ÎªÌ¨S¦³¤W¶Çªþ¥ó¡A·R²ö¯à§U

TOP

¥»©«³Ì«á¥Ñ n7822123 ©ó 2018-9-29 15:03 ½s¿è

¦^´_ 17# ABK




«e¤@¬q®É¶¡¥X®t¡A¼ç¤ô¤F¤@¬q®É¶¡.........
¨ì²{¦b®É®tÁÙ¨S½Õ¾ã¦^¨Ó....
¤£¹L­ã¤j¤wÀ°§Ú¸Ñ¨M :D


»Ý¨D:
1.·í¸ê®ÆÀɵL¥ô¦ó¤H¶}±Ò®É¡A Åý¥DºÞ¥u¶}±Ò§ì¸ê®ÆªºÀÉ  °õ¦æ§ì¸ê®Æµ{¦¡®É¡A¸ê®ÆÀÉ·|¦Û¦æ¶}±Ò¨Ã°õ¦æ§ì¨ú¸ê®Æ¡A§¹¦¨«á¸ê®ÆÀɤ£·|¦Û¦æÃö³¬ (¥Ñ¥DºÞ¦Û¦æ¤â°ÊÃö³¬)

2.·í¦³¨ä¥L¥x¹q¸£¦b¨Ï¥Î¸ê®ÆÀÉ®É, ¥DºÞ¥u¶}±Ò§ì¸ê®ÆªºÀÉ  °õ¦æ§ì¸ê®Æµ{¦¡®É¡A¸ê®ÆÀɬO¥H°ßŪ¼Ò¦¡¶}±Ò«á§ì¨ú¸ê®Æ¡A¸ê®Æ§ì¨ú§¹¦¨«á¸ê®ÆÀÉ(°ßŪ¼Ò¦¡)¤£·|¦Û¦æÃö³¬ (¥Ñ¥DºÞ¦Û¦æ¤â°ÊÃö³¬)

¨ä¹ê¥u­n§ï§Ú­ì¥»ªº3¦æµ{¦¡½X§Y¥i(­Y­n«Å§i¡A«h¦h¤@¦æ)

«Å§i:
Dim read As Boolean

§ó§ï¦p¤U:
If wb.Name = ÀɦW Then MsgBox "¸ê®ÆÀɮ׶}±Ò¤¤¡A½ÐÃö³¬": Exit Sub
§ï¬°
If wb.Name = ÀɦW Then read=true

Set ¸ê®ÆÀÉ = Workbooks.Open(¸ô®|ÀɦW)
§ï¬°
Set ¸ê®ÆÀÉ = Workbooks.Open(¸ô®|ÀɦW,,read)

¸ê®ÆÀÉ.Close True > ¦¹¦æ§R°£
µ{¦¡¬O¨Ì»Ý¨D¼gªº¡A»Ý¨Dªí¹F¤£²M·¡
©ÎªÌ¨S¦³¤W¶Çªþ¥ó¡A·R²ö¯à§U

TOP

¦^´_ 18# n7822123


©Ó¤W¤@¼Ó¡AÀɮצp¤U
¥Í²£ºÞ²z½d¨Ò20180929.rar (30.48 KB)

¦pªG¤ß¦å¨Ó¼é·Q­n§ï¬°Ãö³¬¸ê®ÆÀɮ׮ɡA½Ð±Ò¥Î¤U¤@¦æµ{¦¡½X
¸ê®ÆÀÉ.Close Not read


Á`µ{¦¡½X¦p¤U:
  1. Sub ¬d¸ß§ë²£¼Æ¶q()
  2. '«Å§iÅܼÆ
  3. Dim ÀɦW$, ¸ô®|ÀɦW$, tt$, R&
  4. Dim read As Boolean
  5. Application.ScreenUpdating = False '¿Ã¹õ§Y®É§ó·sÃö³¬
  6. Set Dy = CreateObject("scripting.dictionary")  '³]Dy¬°¦r¨åª«¥ó
  7. Path = ThisWorkbook.Path  '§ì¨ú¥»Àɮ׸ô®|
  8. '©R¦W¦¹¤u§@ªí¬° "­n¶ñªºªí"
  9. Set ­n¶ñªºªí = ThisWorkbook.Sheets("2018¤T¼t¾÷¥x¥Í²£°lÂÜ")
  10. '¦pªG[G5]¦³¸ê®Æ´N¨Ì[G5]¸ô®|ªºÀɮסA¦pªG¨S¨ì´N§ä¦P¸ô®|¤Uªº¥t¤@­ÓexcelÀÉ
  11. If [G5] <> "" Then
  12.   ¸ô®|ÀɦW = [G5]
  13.   ÀɦW = Right(¸ô®|ÀɦW, Len(¸ô®|ÀɦW) - InStrRev(¸ô®|ÀɦW, "\"))
  14.   If Dir(¸ô®|ÀɦW) = "" Then MsgBox "¨Ì[G5]¿é¤Jªº¸ô®|»PÀɦW§ä¤£¨ìÀɮסA½ÐÀˬd¦³µL¿ù»~": Exit Sub
  15. Else
  16.   ÀɦW = Dir(Path & "\*.xls*")
  17.   If ÀɦW = ThisWorkbook.Name Then ÀɦW = Dir
  18.   ¸ô®|ÀɦW = Path & "\" & ÀɦW
  19. End If
  20. 'Àˬd¸ê®ÆÀɮ׬O§_¤w¶}±Ò
  21. For Each wb In Workbooks
  22.   If wb.Name = ÀɦW Then read = True
  23. Next
  24. 'Ãö³¬Åã¥Ü°T®§
  25. Application.DisplayAlerts = False
  26. '¥´¶}¸ê®ÆÀɮסA¨Ã¥B©R¦W¬°"¸ê®ÆÀÉ"
  27. Set ¸ê®ÆÀÉ = Workbooks.Open(¸ô®|ÀɦW, , read)
  28. '³v¤@§â¤u§@ªíªº¥Í²£¥N½X»PÀY²£¼Æ¶q¿é¤J¨ì¦r¨åª«¥óDy¸Ì­±
  29. For Each ws In ¸ê®ÆÀÉ.Sheets
  30.   ws.Activate
  31.   If ws.[D1] <> "§ë²£¼Æ¶q" Then GoTo ¸õ¹L 'Àˬd¬O§_¬°­nªº¤u§@ªí
  32.   For R = 2 To ws.[A1].End(xlDown).Row
  33.     tt = Cells(R, 3): Dy(tt) = Cells(R, 4)
  34.   Next R
  35. ¸õ¹L:
  36. Next
  37. '±Ò¥Î­n¶ñªºªí
  38. ­n¶ñªºªí.Activate
  39. '³v¤@§â¦r¨åª«¥óDy¸Ì­±ªº­È¿é¤J¨ì¦¹¤u§@ªí(­n¶ñªºªí)
  40. For R = 2 To [A1].End(xlDown).Row
  41.   tt = Cells(R, 4)
  42.   Cells(R, 5) = Dy(tt)
  43. Next R
  44. '¤£¸õ¥X½T»{°T®§
  45. Application.DisplayAlerts = False
  46. '¦pªG¤ß¦å¨Ó¼é·Q­n§ï¬°Ãö³¬¸ê®ÆÀɮ׮ɡA½Ð±Ò¥Î¤U¤@¦æµ{¦¡½X
  47. '¸ê®ÆÀÉ.Close Not read
  48. '¦sÀÉÃö³¬+ÄÀ©ñ°O¾ÐÅé
  49. Set ¸ê®ÆÀÉ = Nothing
  50. Set Dy = Nothing
  51. '¿Ã¹õ§Y®É§ó·s¥´¶}
  52. Application.ScreenUpdating = True
  53. End Sub
½Æ»s¥N½X
µ{¦¡¬O¨Ì»Ý¨D¼gªº¡A»Ý¨Dªí¹F¤£²M·¡
©ÎªÌ¨S¦³¤W¶Çªþ¥ó¡A·R²ö¯à§U

TOP

        ÀR«ä¦Û¦b : ¤H¥Í¨S¦³©Ò¦³Åv¡A¥u¦³¥Í©Rªº¨Ï¥ÎÅv¡C
ªð¦^¦Cªí ¤W¤@¥DÃD