AccessTr.neT
Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Excel (https://accesstr.net/forum-microsoft-excel.html)
+--- Forum: Excel Cevaplanmış Soruları (https://accesstr.net/forum-excel-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. (/konu-excel-vba-da-veri-kaydederken-diger-sayfaya-kopyasini-almak.html)

Sayfalar: 1 2 3 4 5


RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - feraz - 16/05/2021

(16/05/2021, 17:25)Oğuz Türkyılmaz yazdı: @feraz hocam kayıt ekleme sorununu hallettim. Güncelleme ile ilgili sorunu nasıl aşabilirim. Güncelleme yapmak istediğimde koda whatapp sayfasında hangi satırı güncelleyeceğini, nasıl gösterebilirim. End(3) dolayısıyla güncellemede de yeni kayıt yapar gibi en son satıra kaydediyor.

Kod:
  End With
       
        If TextBox_Gsm.Value <> "" Then
             
            TextBox_Gsm.Value = Replace(Replace(Replace(Replace(TextBox_Gsm.Value, "(", ""), ")", ""), " ", ""), "-", "")
            ThisWorkbook.Worksheets("Ana_Sayfa").Cells(Guncelle, 30).NumberFormat = "@"
            ThisWorkbook.Worksheets("Ana_Sayfa").Cells(Guncelle, 30) = "+90" & TextBox_Gsm.Value
       
            ThisWorkbook.Worksheets("WHATSAPP").Unprotect ("171717")
            ThisWorkbook.Worksheets("WHATSAPP").Cells(Rows.Count, 1).End(3)(2, 1).NumberFormat = "@"
            ThisWorkbook.Worksheets("WHATSAPP").Cells(Rows.Count, 1).End(3)(2, 1) = "+90" & TextBox_Gsm.Value
            ThisWorkbook.Worksheets("WHATSAPP").Protect
       
        Else
       
        End If

Zaten bu soruyu bekliyordum abey sırada Img-grin
Find kodu ile yada dictionary yada döngü ile satır numara buldurulur gerekli işlem yapılır.
Yeni konu açın çözelim abey Img-grin

(16/05/2021, 17:25)Oğuz Türkyılmaz yazdı: ThisWorkbook.Worksheets("WHATSAPP").Protect

Burayada "şifre" yazılacak abey protect ten sonra boşluk bırakıp.


RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - Oğuz Türkyılmaz - 16/05/2021

@feraz hocam çok uğraştıracak gerek var mı diye sorgulamaya başladım. Sizce hücrede 0 değeri sorun yaratır mı. Whatsapp tan mesaj gönderilirken. Yani o hücrede 0 değeri whatsappın orda takılmasına yada vakit kaybetmesine yol açar mı. Deneyemiyorum şu anda onun için soruyorum.


RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - feraz - 16/05/2021

(16/05/2021, 18:04)Oğuz Türkyılmaz yazdı: @feraz hocam çok uğraştıracak gerek var mı diye sorgulamaya başladım. Sizce hücrede 0 değeri sorun yaratır mı. Whatsapp tan mesaj gönderilirken. Yani o hücrede 0 değeri whatsappın orda takılmasına yada vakit kaybetmesine yol açar mı. Deneyemiyorum şu anda onun için soruyorum.
Abey şimdi ben bir dictionary ile kod yazarım silme,güncelleme ve ekleeme için hepsinde kullanırsınız.


RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - Oğuz Türkyılmaz - 16/05/2021

Formül sorun yaratıyor feraz hocam zaten hücrede 0 olmuş yada boş olmuş farketmiyor. Whatsapp yine göndermeye çalışıyor. Fakat formülle yada kodla ne yaparsak yapalım boş hücrede çalışmasını bir şekilde engellemek gerekiyor. Ya da hiç istemesem de whatsapp sayfasını filtreleyip dolu olanları başka bir sayfaya yapıştırıp filtresizmiş (filtrelemede resimler kopyalanmıyordu)gibi o sayfadan gönderim yapacağım.


RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - feraz - 16/05/2021

(16/05/2021, 18:35)Oğuz Türkyılmaz yazdı: Formül sorun yaratıyor feraz hocam zaten hücrede 0 olmuş yada boş olmuş farketmiyor
Göndermeye çalışıyorsa koda if ile 0 ise yada boş ise yada formüllü ise diye koşul eklenir.
O konu için extra konu açın bakalım abey.

Resimlerde gösterdim.

[Resim: do.php?img=11043]
https://resim.accesstr.net/do.php?img=11043

[Resim: do.php?img=11044]
https://resim.accesstr.net/do.php?img=11044

[Resim: do.php?img=11045]
https://resim.accesstr.net/do.php?img=11045

[Resim: do.php?img=11046]
https://resim.accesstr.net/do.php?img=11046


Sub Whatsap_ekle_sil_guncelle()

Dim dic As Object, sonAna As Long, keyy As String, kac As Long
Dim syfAna As Worksheet, dizi(), i As Long, say As Long, hatalimi As Boolean

Set dic = CreateObject("Scripting.dictionary")
Set syfAna = ThisWorkbook.Worksheets("Ana_Sayfa")

Application.ScreenUpdating = False
sonAna = syfAna.Range("A:A").Find("*", , , , , xlPrevious).Row
hatalimi = False

With ThisWorkbook.Worksheets("WHATSAPP")
  .Unprotect "171717"
    .Range("A2:A" & Rows.Count).ClearContents
   
    If sonAna < 2 Then
        hatalimi = True: GoTo son
    End If

    kac = WorksheetFunction.CountA(syfAna.Range("A2:A" & Rows.Count))
    If kac = 1 Then
        .Range("A2").Value = syfAna.Cells(sonAna, "AD").Value
        GoTo son
    End If
   
    dizi = syfAna.Range("AD2:AD" & sonAna).Value
    ReDim arr(1 To UBound(dizi), 1 To 1)
    say = 0
   
    For i = LBound(dizi) To UBound(dizi)
      keyy = CStr(dizi(i, 1))
      If Not dic.exists(keyy) Then
          say = say + 1
          dic.Add keyy, 0
          arr(say, 1) = keyy
      End If
    Next
   
    If dic.Count > 0 Then .Range("A2").Resize(dic.Count, 1).Value = arr
son:
Application.ScreenUpdating = True
.Protect "171717"
End With
On Error Resume Next
If hatalimi = True Then
    MsgBox "Kaydedilecek yada güncellenecek yada silinecek veri yok.", vbCritical, "Hata"
Else
    MsgBox "islem tamam.", vbInformation, "Bilgi"
End If
Set sic = Nothing: Set syfAna = Nothing: Erase arr: Erase dizi
End Sub





RE: Excel Vba Da Veri Kaydederken Diğer Sayfaya Kopyasını Almak. - feraz - 16/05/2021

Bence whatapp sayfadan yollamak sakıncalı.
Yolladığım kodla gönderecekseniz kodu kısaltınca eklerim,uzamış biraz Img-grin