DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Private Sub CommandButton1_Click()
Dim sat1 As Long, i As Long, sh As Worksheet, sat2 As Long
Dim j As Long
Sheets("Sayfa1").Select
Set sh = Sheets("Sayfa2")
Application.ScreenUpdating = False
sh.Range("A2:F" & Rows.Count).Clear
sat1 = Cells(Rows.Count, "C").End(xlUp).Row
sat2 = 2
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
For j = 2 To sat1
If Cells(j, "C").Value = ListBox1.list(i, 0) Then
Range("A" & j & ":F" & j).Copy sh.Range("A" & sat2)
sat2 = sat2 + 1
End If
Next j
End If
Next i
Application.CutCopyMode = False
Application.ScreenUpdating = True
sh.Select
MsgBox "İşlem Tamamlanmıştır." & vbLf & "evrengizlen@hotmail.com"
End Sub
Private Sub UserForm_Click()
End Sub
Option Base 1
Private Sub UserForm_Initialize()
Dim sat As Long, z As Object, list(), i As Long
Sheets("Sayfa1").Select
Set z = CreateObject("Scripting.dictionary")
sat = Cells(Rows.Count, "C").End(xlUp).Row
list = Range("C2:C" & sat).Value
For i = 1 To UBound(list)
If Not z.exists(list(i, 1)) Then z.Add (list(i, 1)), Nothing
Next
ListBox1.list = Application.Transpose(Array(z.keys))
End Sub
Dosyanız ektedir.Orion1 Hocam,
Yardımlarınız için çok teşekkür ederim.Tam istediğim gibi olmuş.Yalnız bir şey daha sorabilir miyim?Koşul sabit olursa ,yani sürekli İstanbul,Ankara Antalya doğumlu olanları kopyalamak istersek nasıl olur?
Private Sub UserForm_Initialize()
Dim sat As Long, z As Object, list(), i As Long
Me.Caption = Format(Date, "dd.mmmm.yyyy dddd") & " evrengizlen@hotmail.com"
Sheets("Sayfa1").Select
Set z = CreateObject("Scripting.dictionary")
sat = Cells(Rows.Count, "C").End(xlUp).Row
list = Range("C2:C" & sat).Value
For i = 1 To UBound(list)
If Not z.exists(list(i, 1)) Then z.Add (list(i, 1)), Nothing
Next
ListBox1.list = Application.Transpose(Array(z.keys))
Set z = Nothing: Erase list
For i = 0 To ListBox1.ListCount - 1
If ListBox1.list(i, 0) = "İstanbul" Or ListBox1.list(i, 0) = "Ankara" _
Or ListBox1.list(i, 0) = "Antalya" Then ListBox1.Selected(i) = True
Next i
End Sub
Dosyanız ektedir.UserFom-ListBox kullanmadan makro kodunun içine İstanbul,Ankara,Antalya yazarak satırı nasıl kopyalayabilirim.
Sub aktar_59()
Dim sat1 As Long, sh As Worksheet, sat2 As Long
Dim j As Long
Sheets("Sayfa1").Select
Set sh = Sheets("Sayfa2")
Application.ScreenUpdating = False
sh.Range("A2:F" & Rows.Count).Clear
sat1 = Cells(Rows.Count, "C").End(xlUp).Row
sat2 = 2
For j = 2 To sat1
If Cells(j, "C").Value = "İstanbul" Or Cells(j, "C").Value = "Ankara" _
Or Cells(j, "C").Value = "Antalya" Then
Range("A" & j & ":F" & j).Copy sh.Range("A" & sat2)
sat2 = sat2 + 1
End If
Next j
Application.CutCopyMode = False
Application.ScreenUpdating = True
sh.Select
Set sh = Nothing
MsgBox "İşlem Tamamlanmıştır." & vbLf & "evrengizlen@hotmail.com"
End Sub
Evren Hocam,Dosyanız ektedir.
Kod:Sub aktar_59() Dim sat1 As Long, sh As Worksheet, sat2 As Long Dim j As Long Sheets("Sayfa1").Select Set sh = Sheets("Sayfa2") Application.ScreenUpdating = False sh.Range("A2:F" & Rows.Count).Clear sat1 = Cells(Rows.Count, "C").End(xlUp).Row sat2 = 2 For j = 2 To sat1 If Cells(j, "C").Value = "İstanbul" Or Cells(j, "C").Value = "Ankara" _ Or Cells(j, "C").Value = "Antalya" Then Range("A" & j & ":F" & j).Copy sh.Range("A" & sat2) sat2 = sat2 + 1 End If Next j Application.CutCopyMode = False Application.ScreenUpdating = True sh.Select Set sh = Nothing MsgBox "İşlem Tamamlanmıştır." & vbLf & "evrengizlen@hotmail.com" End Sub
Alttaki kırmızı yerler ile eski yazılanları değiştiriniz.Evren Hocam,
Yardımların için çok teşekkür ederim.Bir eklenti yapabilir miyiz?Sayfa2'ye kopyalamada her seferinde yeni veriyi üzerine kopyalıyor.Acaba Öncekini silmeden alttaki satıra kopyalayarak nasıl devam edebilir.
Alttaki kırmızı yerler ile eski yazılanları değiştiriniz.
Kod:
sat2 = sh.Cells(Rows.Count, "A").End(xlUp).Row + 1
For j = 2 To sat1
If Cells(j, "C").Value = "İstanbul" Or Cells(j, "C").Value = "Ankara" _
Or Cells(j, "C").Value = "Antalya" Then
Range("A" & j & ":F" & j).Copy sh.Range("A" & sat2)
sat2 = sat2 + 1
End If
Next j
Buyurun.Evren Hocam,
Değişiklikleri yapmama rağmen kodu çalıştıramadım.Size zahmet olmazsa tüm kodu değişiklikleri ile yazabilir misiniz?
Sub aktar_59()
Dim sat1 As Long, sh As Worksheet, sat2 As Long
Dim j As Long
Sheets("Sayfa1").Select
Set sh = Sheets("Sayfa2")
Application.ScreenUpdating = False
'sh.Range("A2:F" & Rows.Count).Clear
sat1 = Cells(Rows.Count, "C").End(xlUp).Row
sat2 = sh.Cells(Rows.Count, "A").End(xlUp).Row
For j = 2 To sat1
If Cells(j, "C").Value = "İstanbul" Or Cells(j, "C").Value = "Ankara" _
Or Cells(j, "C").Value = "Antalya" Then
Range("A" & j & ":F" & j).Copy sh.Range("A" & sat2)
sat2 = sat2 + 1
End If
Next j
Application.CutCopyMode = False
Application.ScreenUpdating = True
sh.Select
Set sh = Nothing
MsgBox "İşlem Tamamlanmıştır." & vbLf & "evrengizlen@hotmail.com"
End Sub
Rica ederim.Evren Hocam,
Yardımlarınız için çok teşekkür ederim.