Board logo

標題: [發問] 不知道哪裡出錯了, 請高手指點 [打印本頁]

作者: darigaaz    時間: 2015-2-3 14:12     標題: 不知道哪裡出錯了, 請高手指點

Private Sub CommandButton1_Click()
On Error Resume Next

If CheckBox1.Value And ComboBox1.Text = "" Then MsgBox "02 Incorrect Filter Conditions", vbExclamation, "": Exit Sub
If CheckBox2.Value And ComboBox2.Text = "" Then MsgBox "03 Incorrect Filter Conditions", vbExclamation, "": Exit Sub
Application.ScreenUpdating = False
With Sheet8
  If CheckBox1.Value Then .Range(.[a2], .[h65535].End(3)).AutoFilter Field:=3, Criteria1:=ComboBox1.Text
  If CheckBox2.Value Then .Range(.[a2], .[h65535].End(3)).AutoFilter Field:=7, Criteria1:=ComboBox2.Text
    .Range(.[a2], [h65536].End(3)).Copy

End With
   
    Sheets.Add After:=Sheets(Sheets.Count)
    If ComboBox1.Text <> "" Then
    ActiveSheet.Name = ComboBox1.Text
    Else
    ActiveSheet.Name = ComboBox2.Text
    End If
    [a1].Select
    ActiveSheet.Paste
Sheet8.Activate
    Sheet8.Range([a1], [l65536].End(3)).AutoFilter
    Sheets(ComboBox1.Text).Activate
    Unload Me
    Application.ScreenUpdating = True
End Sub

我是想把篩選出來的東資料都copy到新的sheet的,
但不知道為什麼篩選出來的東西都沒選中, 只copy了頭一行
作者: diolin    時間: 2015-2-4 17:53

回復 1# darigaaz

改用 .UsedRange.Copy 應該就可以了
作者: darigaaz    時間: 2015-2-5 12:19

我 I ~ CC欄是有東西的, 但我不想把那些東西也copy到新的sheet上
作者: stillfish00    時間: 2015-2-5 14:40

回復 1# darigaaz

你可以先在  .Range(.[a2], [h65536].End(3)).Copy
前面加一行 Stop,先看看到底有沒有篩選正確

也有可能是 .End(3) 出問題(舊版本xlUp才會是3),可以都改為 .End(xlUp) 看看

不然就附檔看看
作者: diolin    時間: 2015-2-5 15:18

我 I ~ CC欄是有東西的, 但我不想把那些東西也copy到新的sheet上
darigaaz 發表於 2015-2-5 12:19


那就用 .UsedRange.columns(1:8).Copy




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)