- ©«¤l
- 258
- ¥DÃD
- 77
- ºëµØ
- 0
- ¿n¤À
- 385
- ÂI¦W
- 0
- §@·~¨t²Î
- Win7
- ³nÅ骩¥»
- Office2010
- ¾\ŪÅv
- 20
- ©Ê§O
- ¨k
- ¨Ó¦Û
- Taiwan
- µù¥U®É¶¡
- 2010-8-8
- ³Ì«áµn¿ý
- 2021-1-25
|
¦^´_ GBKEE
¦ý§PŪ¬Û²§·Ç«h1~12Äæ copy¬O1~21Äæ
yangjie µoªí©ó 2015-4-4 01:04  ¦Û¦Û¤v×¥¿¦p¤U
Sub openfile1()
Dim FileName1 As String
Dim FileName() As String
Dim xlfileName As String
Dim nSelected As Integer
Dim d As Object, R As Range, S As String, AR(), i As Integer
Set wb = ActiveWorkbook
wb.Activate
path1 = ActiveWorkbook.Path
ChDir path1
With Application.FileDialog(msoFileDialogFilePicker)
.InitialFileName = path1
.AllowMultiSelect = True
.Filters.Add "Excel", "*.xls; *.xlsx", 1
.Show
nSelected = .SelectedItems.Count
ReDim FileName(nSelected)
For i = 1 To .SelectedItems.Count
FileName(i - 1) = .SelectedItems(i)
Next
'¥Î©ó§PŪnothing
For i = 1 To .SelectedItems.Count
FileName1 = .SelectedItems(i)
Next
End With
If FileName1 = "" Then
MsgBox "No file was selected."
Exit Sub
End If
For i = 1 To nSelected
xlfileName = Dir(FileName(i - 1))
If xlfileName = wb.Name Then GoTo 50
If filetoFind(FileName(i - 1)) Then
Application.EnableEvents = False
If IsOpen(xlfileName) Then
Workbooks(xlfileName).Activate
Set wb1 = Workbooks(xlfileName)
Else
Set wb1 = Workbooks.Open(FileName(i - 1))
End If
wb.Activate
Else
MsgBox "§ä¤£µÛ" & FileName(i - 1)
Application.EnableEvents = True
Application.ScreenUpdating = True
'Exit Sub
GoTo 50
End If
Application.EnableEvents = True
On Error Resume Next
wb.Activate
Set d = CreateObject("scripting.dictionary")
For Each R In Sheets("¾Ç¥Í¸ê®Æ").UsedRange.Rows
'S = Join(Application.Transpose(Application.Transpose(R.Value)), ",")
S = Join(Application.Transpose(Application.Transpose(Range(Sheets("¾Ç¥Í¸ê®Æ").Cells(R.Row, 1), Sheets("¾Ç¥Í¸ê®Æ").Cells(R.Row, 20)).Value)), ",")
¬O§_¦³§ó¦n¤§¤è¦¡? Y¬O§PŪ¬Û²§·Ç«h¬°²Ä¤@²Ä¥|²Ä¤E²Ä¤QÄæ ¨º´NµLÂá¤F
d(S) = ""
Next
wb1.Activate
For Each R In Sheets("¾Ç¥Í¸ê®Æ").UsedRange.Rows
'S = Join(Application.Transpose(Application.Transpose(R.Value)), ",")
S = Join(Application.Transpose(Application.Transpose(Range(Sheets("¾Ç¥Í¸ê®Æ").Cells(R.Row, 1), Sheets("¾Ç¥Í¸ê®Æ").Cells(R.Row, 20)).Value)), ",")
If d.exists(S) = False Then '¦r¨åª«¥óªºKey¤£¦s¦b
row1 = wb.Sheets("¾Ç¥Í¸ê®Æ").Range("A65536").End(xlUp).Row + 1
wb1.Sheets("¾Ç¥Í¸ê®Æ").Rows(R.Row).Copy wb.Sheets("¾Ç¥Í¸ê®Æ").Cells(row1, 1)
End If
Next
On Error GoTo 0
wb.Activate
wb1.Activate
wb1.Close False
Set wb1 = Nothing
50
Next
MakeMenu
End Sub |
|