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

¤ñ¹ï¨â­Ó¤À­¶¸ê®Æ,¦^õXÄæ¦ì­È,¨Ó·½¸ê®Æ(¥i¯à)¦³¨âµ§¥H¤Wª¬ªp

¤ñ¹ï¨â­Ó¤À­¶¸ê®Æ,¦^õXÄæ¦ì­È,¨Ó·½¸ê®Æ(¥i¯à)¦³¨âµ§¥H¤Wª¬ªp

¦pÃD!
¤ñ¹ï¨â­Ó¤À­¶¸ê®Æ,¦^õXÄæ¦ì­È,·í¨Ó·½¸ê®Æ¦³¨âµ§¥H¤W
À³¸Ó¦p¦ó¼g?!

¤£ª¾¯à¥ÎVBA§¹¦¨?!ÁÙ¬O¥u¯à¥Î¨ç¼Æ
½Ð¦U¦ì¤j¤jÀ°­Ó¦£
¦nÅý§Ú¾Ç²ßÀ³¥Î
ÁÂÁÂ!!
¦^õXÄæ¦ì­È.rar (22.71 KB)

¥»©«³Ì«á¥Ñ stillfish00 ©ó 2013-11-15 15:30 ½s¿è

¦^´_ 1# HSIEN6001
­×§ï¤@¤U¿ý»sMicrosoft Queryªº¥¨¶°¡ALeft Joinµ²¦X¨âªí¡C

Sub Test()
    On Error Resume Next
    With Sheets("¦^õX¼Æ­È")
      .Cells.ListObject.QueryTable.Delete
      .Cells.ClearContents
      With .ListObjects.Add(SourceType:=0, Source:=Array(Array( _
          "ODBC;DSN=Excel Files;DBQ=" & ThisWorkbook.FullName & ";DefaultDir=" & ThisWorkbook.Path & ";DriverId=1046;MaxB" _
          ), Array("ufferSize=2048;PageTimeout=5;")), Destination:=.Range("$A$1")). _
          QueryTable
          .CommandText = Array( _
          "SELECT `¨Ó·½1$`.¥N¸¹, `¨Ó·½1$`.¦WºÙ, `¨Ó·½1$`.¤é´Á, `¨Ó·½1$`.º¦¶^, `¨Ó·½1$`.¦¬½L, `¨Ó·½1$`.`¦¨¥æ(±i)`, `¨Ó·½1$`.·í¨R, `¨Ó·½2$`.¤jªÑªF¦WºÙ, `¨Ó·½2$`.`²§°Ê(±i)`, `¨Ó·½2$`.¤W¤ë«ù±i, `¨Ó·½2$`.¥»¤ë«ù±i" & Chr(13) & "" & Chr(10) & "FR" _
          , _
          "OM {oj `" & ThisWorkbook.FullName & "`.`¨Ó·½1$` `¨Ó·½1$` LEFT OUTER JOIN `" & ThisWorkbook.FullName & "`.`¨Ó·½2$` `¨Ó·½2$` ON `¨Ó·½1$`.¥N¸¹ = `¨Ó·½2$`." _
          , "¥N¸¹}")
          .RowNumbers = False
          .FillAdjacentFormulas = False
          .PreserveFormatting = True
          .RefreshOnFileOpen = False
          .BackgroundQuery = True
          .RefreshStyle = xlInsertDeleteCells
          .SavePassword = False
          .SaveData = True
          .AdjustColumnWidth = True
          .RefreshPeriod = 0
          .PreserveColumnInfo = True
          .ListObject.DisplayName = "ªí®æ_¨Ó¦Û_Excel_Files_ªº¬d¸ß"
          .Refresh BackgroundQuery:=False
      End With
    End With
End Sub

TOP

¦^´_ 2# stillfish00
¤pµ§»~
Sub Test()
    With Sheets("¦^õX¼Æ­È")
      On Error Resume Next
      .Cells.ListObject.QueryTable.Delete
      .Cells.ClearContents
      On Error goto 0
      With .ListObjects.Add(SourceType:=0, Source:=Array(Array( _
          "ODBC;DSN=Excel Files;DBQ=" & ThisWorkbook.FullName & ";DefaultDir=" & ThisWorkbook.Path & ";DriverId=1046;MaxB" _
          ), Array("ufferSize=2048;PageTimeout=5;")), Destination:=.Range("$A$1")). _
          QueryTable
          .CommandText = Array( _
          "SELECT `¨Ó·½1$`.¥N¸¹, `¨Ó·½1$`.¦WºÙ, `¨Ó·½1$`.¤é´Á, `¨Ó·½1$`.º¦¶^, `¨Ó·½1$`.¦¬½L, `¨Ó·½1$`.`¦¨¥æ(±i)`, `¨Ó·½1$`.·í¨R, `¨Ó·½2$`.¤jªÑªF¦WºÙ, `¨Ó·½2$`.`²§°Ê(±i)`, `¨Ó·½2$`.¤W¤ë«ù±i, `¨Ó·½2$`.¥»¤ë«ù±i" & Chr(13) & "" & Chr(10) & "FR" _
          , _
          "OM {oj `" & ThisWorkbook.FullName & "`.`¨Ó·½1$` `¨Ó·½1$` LEFT OUTER JOIN `" & ThisWorkbook.FullName & "`.`¨Ó·½2$` `¨Ó·½2$` ON `¨Ó·½1$`.¥N¸¹ = `¨Ó·½2$`." _
          , "¥N¸¹}")
          .RowNumbers = False
          .FillAdjacentFormulas = False
          .PreserveFormatting = True
          .RefreshOnFileOpen = False
          .BackgroundQuery = True
          .RefreshStyle = xlInsertDeleteCells
          .SavePassword = False
          .SaveData = True
          .AdjustColumnWidth = True
          .RefreshPeriod = 0
          .PreserveColumnInfo = True
          .ListObject.DisplayName = "ªí®æ_¨Ó¦Û_Excel_Files_ªº¬d¸ß"
          .Refresh BackgroundQuery:=False
      End With
    End With
End Sub

TOP

¦^´_ 3# stillfish00

§A¦n!ÁÂÁ¦^ÂÐ
­è­è°õ¦æµ²ªG¦p¹Ï,¤£ª¾¹D­þ¸Ì¦³°ÝÃD


   
»yªk«Ü²`¶ø..¬Ý¤£À´  T_T


§Ú¤]·|¸ÕµÛ¥Î¨ç¼Æªº¤è¦¡¼g¼g¬Ý
µy«á­YÁÙ¬O§Ë¤£¥X¨Ó,¦A¦V¦U¦ì«e½ú¨D§U
^^

TOP

½Ð°Ý,°}¦Cªº³]©wÀ³¸Ó¦p¦ó¼g
ª¦¤å³\¤[,µLªk¿Ä·|³e³q

¦A½Ð¤j¤jÀ°À°¦£!!«ô°U~
¦^õXÄæ¦ì­È.rar (27.66 KB)

TOP

¦^´_ 4# HSIEN6001
DriverId=1046 §ï¦¨ DriverId=790 ¬Ý¬Ý
À³¸Ó¬OEXCELª©¥»¤£¦P°ÝÃD...

»yªk¦]¬°¬O¿ýªº¡A§Ú¤]¨S¦³¾ã²z¹L¡A©Ò¥H«ÜÃø¬ÝÀ´¡A

TOP

¦^´_ 6# stillfish00


    ÁÂÁ±z¦^ÂÐ,­×§ï¤F
¦ý°õ¦æµ²ªG¤]¬O¬Û¦P,¬O§_­n¤Ä¿ï¤Þ¥Î¶µ¥Ø?

TOP

¦^õXÄæ¦ì­È-­Ó§OÄæ¦ì³]©w.rar (27.61 KB)
¥Ø«e§¹¦¨¤F­Ó§OÄæ¦ìªº³]©w
{=INDEX(¨Ó·½1!$C$1:$C$1000,MATCH(¦^õX¼Æ­È!A2&B2,¨Ó·½1!$A$1:$A$1000&¨Ó·½1!$B$1:$B$1000,0),1)}


¦ý¤£ª¾­n¦p¦óÀ³¥Î³o¬q»yªk,³]©w¬°°Ï¶¡
'=IF(INT((COLUMN(A$1)-1)/4)+1>COUNTIF(¨Ó·½1!$A:$F,¦^õX¼Æ­È!$A2),"",INDEX(¨Ó·½1!$A:$F,SMALL(IF(¨Ó·½1!$A$1:$M$1000=¦^õX¼Æ­È!$A2,ROW($1:$1000),""),INT((COLUMN(A$1)-1)/4)+1),{2,3,4,5,6}))

¬õ¦r³¡¤ÀµLªk§ËÀ´!

¤W­±³o¬q»yªk¨Ó·½,§Ñ¤F³sµ²ÂI
¦pªþ¥ó
Äæ¦ì¤ñ¹ï¦^õX.rar (133.37 KB)

TOP

        ÀR«ä¦Û¦b : ¨C¤ÑµL©Ò¨Æ¨Æ¡A¬O¤H¥Íªº®ø¶OªÌ¡A¿n·¥¡B¦³¥Î¤~¬O¤H¥Íªº³Ð³yªÌ¡C
ªð¦^¦Cªí ¤W¤@¥DÃD