assenucler
Altın Üye
- Katılım
- 19 Ağustos 2004
- Mesajlar
- 3,588
- Excel Vers. ve Dili
- Ofis 365 TR 64 Windows 11 Pro x64 TR
Değerli dostlarım merhabalar.
Sayın Necdet Yeşertener tarafından "Süz ve Sayfaya Aktar" konusunda bir forumdaşa verilen yanıta ekli dosyayı kullanırken, sütun başlıklarının aktarılan sayfanın 1. satırına değil, 3. satıra kopyalanması ve verilerin 4. satırdan itibaren listelenmesini istiyorum.
Bunu sağlamak için aşağıdaki kodlarda nasıl bir değişiklik gerekmektedir?
Sub Suz_ve_Aktar()
Dim SonSat As Long, _
Olcut As String, _
s2 As Worksheet
Sheets("GENEL").Select
With Sheets("GENEL")
If .AutoFilterMode Then
With .AutoFilter.Filters(1)
If .On Then Olcut = .Criteria1
End With
End If
End With
If Olcut = "" Then Exit Sub
Olcut = Replace(Olcut, "=", "")
If Not SayfaVarMi(Olcut) Then
Sheets.Add After:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Olcut
Sheets("GENEL").Select
End If
Range("A1").Activate
Set s2 = Sheets(Olcut)
On Error Resume Next
SonSat = s2.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
If SonSat = 0 Then SonSat = 1
Range("A1").CurrentRegion.Copy s2.Range("A" & SonSat)
If SonSat > 1 Then s2.Rows(SonSat).Delete
MsgBox "İşlem Tamam..."
End Sub
Değerli yardımınızı rica ediyorum.
Katkılarınız için önceden teşekkürler.
Sayın Necdet Yeşertener tarafından "Süz ve Sayfaya Aktar" konusunda bir forumdaşa verilen yanıta ekli dosyayı kullanırken, sütun başlıklarının aktarılan sayfanın 1. satırına değil, 3. satıra kopyalanması ve verilerin 4. satırdan itibaren listelenmesini istiyorum.
Bunu sağlamak için aşağıdaki kodlarda nasıl bir değişiklik gerekmektedir?
Sub Suz_ve_Aktar()
Dim SonSat As Long, _
Olcut As String, _
s2 As Worksheet
Sheets("GENEL").Select
With Sheets("GENEL")
If .AutoFilterMode Then
With .AutoFilter.Filters(1)
If .On Then Olcut = .Criteria1
End With
End If
End With
If Olcut = "" Then Exit Sub
Olcut = Replace(Olcut, "=", "")
If Not SayfaVarMi(Olcut) Then
Sheets.Add After:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Olcut
Sheets("GENEL").Select
End If
Range("A1").Activate
Set s2 = Sheets(Olcut)
On Error Resume Next
SonSat = s2.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
If SonSat = 0 Then SonSat = 1
Range("A1").CurrentRegion.Copy s2.Range("A" & SonSat)
If SonSat > 1 Then s2.Rows(SonSat).Delete
MsgBox "İşlem Tamam..."
End Sub
Değerli yardımınızı rica ediyorum.
Katkılarınız için önceden teşekkürler.
Ekli dosyalar
Son düzenleme:
