- 帖子
- 522
- 主題
- 36
- 精華
- 1
- 積分
- 603
- 點名
- 0
- 作業系統
- win xp sp3
- 軟體版本
- Office 2003
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2012-12-13
- 最後登錄
- 2021-7-11
|
8#
發表於 2014-3-2 04:59
| 只看該作者
回復 7# flying008
大大你好:
公式我正在學, 請試試vba- Private Sub CommandButton1_Click()
- Dim sh As Worksheet, i, 數量 As Integer, rngA As Range
- Set sh = ThisWorkbook.Sheets("Sheet1")
- 數量 = sh.[A1].End(xlDown).Row - 1
- sh.[D2].Resize(數量, 2) = ""
- sh.[A2].Resize(數量, 3).Sort _
- Key1:=Range("B2"), _
- Key2:=Range("A2"), _
- Order1:=xlAscending, _
- Order2:=xlAscending, _
- Header:=xlNo
- sh.[D2].Resize(1, 2).Value = sh.[A2].Resize(1, 2).Value
- For i = 3 To 數量 + 1
- If sh.Cells(i, 1) <> Cells(i - 1, 1) Then
- sh.Cells(sh.[D1].End(xlDown).Row + 1, 4).Resize(1, 2).Value = sh.Cells(i, 1).Resize(1, 2).Value
- ElseIf sh.Cells(i, 1) = Cells(i - 1, 1) And sh.Cells(i, 2) <> Cells(i - 1, 2) Then
- sh.Cells(sh.[D1].End(xlDown).Row + 1, 4).Resize(1, 2).Value = sh.Cells(i, 1).Resize(1, 2).Value
- End If
- Next
- sh.[D2].Resize(數量, 2).Sort _
- Key1:=Range("D2"), _
- Order1:=xlAscending, _
- Header:=xlNo
- End Sub
複製代碼 |
|