Tüm Çalışanlara Selamlar.
A dan G ye kadar olan bir tabloda D sütunu süzdürülmektedir. Aynı zamanda sayfa1 den, satırlar halinde veriler sayfa2 ye aktarılmaktadır. Ancak süzme yapılınca bu şekilde veriler aktarılırken sıra ile aktarım sağlanması gerekirken veriyi en sona atmaktadır. Yani sırasına göre veri aktarılamamaktadır. Bu hataya meyil vermemek adına, süzülme varsa aktarma yapılmasını engellemek kod ile mümkün müdür, mümkünse nasıl kodlarız? Şöyle bir uyarı da eklenebilir? <<"Süzme işlemi açıkken veri aktarılamaz, süzmeyi kaldırınız">>
Aktarma yöntemi aşağıdadır.
ListView1.View = lvwReport
say = ListView1.ListItems.Count
With ListView1
.ListItems.Add , , ComboBox18 ' Kaynak
.ListItems(say + 1).SubItems(1) = ComboBox12 '
.ListItems(say + 1).SubItems(2) = ComboBox3 '
.ListItems(say + 1).SubItems(3) = TextBox4 '
.ListItems(say + 1).SubItems(4) = TextBox5 '
.ListItems(say + 1).SubItems(5) = ComboBox9 '
.ListItems(say + 1).SubItems(6) = TextBox24 '
.ListItems(say + 1).SubItems(7) = ComboBox14 '
.ListItems(say + 1).SubItems(9) = TextBox8 '
.............................................................
Cells(sonsat + 1, "B").Select
Cells(sonsat + 1, "B").Value = ComboBox18.Value 'KAYNAK
Cells(sonsat + 1, "C").Value = ComboBox12.Value 'Mimari Ofis
Cells(sonsat + 1, "D").Value = TextBox9.Value 'İNŞAAT FİRMASI D
Cells(sonsat + 1, "E").Value = TextBox4.Value 'GÖRÜŞÜLEN PROJE E
Cells(sonsat + 1, "F").Value = TextBox5.Value 'İLGİLİ KİŞİf
Cells(sonsat + 1, "G").Value = ComboBox3.Value 'ŞEHİR g
Cells(sonsat + 1, "H").Value = TextBox26.Value 'adres h
Cells(sonsat + 1, "I").Value = TextBox8.Value 'telno. h
Cells(sonsat + 1, "J").Value = TextBox24.Value ' e-mail j
................................
sonsat = Cells(1000, "D").End(xlUp).Row
If sonsat >= 1000 Then
MsgBox "Satır Doldu Başka Kayıt Yapamazsınız.", vbCritical
End If
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFiltering:=True
End Sub
Saygılarımla
A dan G ye kadar olan bir tabloda D sütunu süzdürülmektedir. Aynı zamanda sayfa1 den, satırlar halinde veriler sayfa2 ye aktarılmaktadır. Ancak süzme yapılınca bu şekilde veriler aktarılırken sıra ile aktarım sağlanması gerekirken veriyi en sona atmaktadır. Yani sırasına göre veri aktarılamamaktadır. Bu hataya meyil vermemek adına, süzülme varsa aktarma yapılmasını engellemek kod ile mümkün müdür, mümkünse nasıl kodlarız? Şöyle bir uyarı da eklenebilir? <<"Süzme işlemi açıkken veri aktarılamaz, süzmeyi kaldırınız">>
Aktarma yöntemi aşağıdadır.
ListView1.View = lvwReport
say = ListView1.ListItems.Count
With ListView1
.ListItems.Add , , ComboBox18 ' Kaynak
.ListItems(say + 1).SubItems(1) = ComboBox12 '
.ListItems(say + 1).SubItems(2) = ComboBox3 '
.ListItems(say + 1).SubItems(3) = TextBox4 '
.ListItems(say + 1).SubItems(4) = TextBox5 '
.ListItems(say + 1).SubItems(5) = ComboBox9 '
.ListItems(say + 1).SubItems(6) = TextBox24 '
.ListItems(say + 1).SubItems(7) = ComboBox14 '
.ListItems(say + 1).SubItems(9) = TextBox8 '
.............................................................
Cells(sonsat + 1, "B").Select
Cells(sonsat + 1, "B").Value = ComboBox18.Value 'KAYNAK
Cells(sonsat + 1, "C").Value = ComboBox12.Value 'Mimari Ofis
Cells(sonsat + 1, "D").Value = TextBox9.Value 'İNŞAAT FİRMASI D
Cells(sonsat + 1, "E").Value = TextBox4.Value 'GÖRÜŞÜLEN PROJE E
Cells(sonsat + 1, "F").Value = TextBox5.Value 'İLGİLİ KİŞİf
Cells(sonsat + 1, "G").Value = ComboBox3.Value 'ŞEHİR g
Cells(sonsat + 1, "H").Value = TextBox26.Value 'adres h
Cells(sonsat + 1, "I").Value = TextBox8.Value 'telno. h
Cells(sonsat + 1, "J").Value = TextBox24.Value ' e-mail j
................................
sonsat = Cells(1000, "D").End(xlUp).Row
If sonsat >= 1000 Then
MsgBox "Satır Doldu Başka Kayıt Yapamazsınız.", vbCritical
End If
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFiltering:=True
End Sub
Saygılarımla