• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Veri Aktarma

hedjaz

Altın Üye
Katılım
17 Nisan 2009
Mesajlar
104
Excel Vers. ve Dili
2016 Türkçe
Merhabalar,

Kaydet butonu çalışmıyor. Dosyaya açıklamaları yazdım.

Yardımcı olursanız çok sevinirim.
 

Ekli dosyalar

Tanımlama sayfanızda kaydedilecek hücreler G3 ve H3 olarak belirlenmiş. bunlar 7. ve 8. sütunlar. Kodda ise 7. sütun yerine 8. sütun ve 8. sütun yerine 9. sütun olarak ayarlanmış. Kod şöyle olmalı:

PHP:
Private Sub CommandButton1_Click()

Dim s1 As Worksheet, mal As Worksheet, hizmet As Worksheet
Set s1 = Sheets("Mamul Kodlama"): Set mal = Sheets("Mamul Listesi")


    If Not s1.Cells(3, 3) = "" And Not s1.Cells(4, 3) = "" Then
    Set m_bul = mal.Range("B:B").Find((s1.Cells(3, 8)), lookat:=xlWhole)
        If m_bul Is Nothing Then
            son = mal.Cells(Rows.Count, 2).End(xlUp).Row + 1
            mal.Cells(son, 1).Resize(1, 2) = Array(s1.Cells(3, 7), s1.Cells(3, 8))
            MsgBox "Mamül Listesine Kayit Yapildi", vbInformation + vbMsgBoxRtlReading, "Artikel Tanımlama"
        Else
            MsgBox "Ürün Listede Mevcut", vbCritical + vbMsgBoxRtlReading, "Artikel Tanımlama"
        End If
    End If
End Sub

Bu tür sorunlarla karşılaşmamak için örneğinizdeki gibi hücre adresleriniz belliyse cells(3,9) şeklinde tanımlamak yerine doğrudan hücre adreslerini kullanmanızı öneririm. Örneğin kodlarınız şöyle olsa daha iyi olurdu:

Kod:
Private Sub CommandButton1_Click()
Dim s1 As Worksheet, mal As Worksheet, hizmet As Worksheet
Set s1 = Sheets("Mamul Kodlama"): Set mal = Sheets("Mamul Listesi")
    If Not s1.[C3] = "" And Not s1.[C4] = "" Then
    Set m_bul = mal.Range("B:B").Find((s1.[H3]), lookat:=xlWhole)
        If m_bul Is Nothing Then
            son = mal.Cells(Rows.Count, 2).End(xlUp).Row + 1
            mal.Cells(son, 1) = s1.[G3]
            mal.Cells(son, 1) = s1.[H3]
            MsgBox "Mamül Listesine Kayit Yapildi", vbInformation + vbMsgBoxRtlReading, "Artikel Tanımlama"
        Else
            MsgBox "Ürün Listede Mevcut", vbCritical + vbMsgBoxRtlReading, "Artikel Tanımlama"
        End If
    End If
End Sub
 
Öncelikle dönüşünüz ve verdiğiniz bilgi için teşekkür ederim.

yazdığınız makroyu denedim.

Kaydet dediğimde sadece sistem kodunu atıyor ve Mamul adına atıyor. İstediğim hem ürün adını hem de sistem kodunu aktarmasıydı.

Birde ikinci bir ürünü aktarmak istediğimde üstüne atıyor altına değil.

Son olarak Aynı ürün adını veya kodu aktarma durumunda "Ürün listede Mevcut" uyarısı vermiyor.
 
Verdiğim ilk kod istediğiniz gibi çalışıyor. İkinci kodda ise

mal.Cells(son, 1) = s1.[G3]
mal.Cells(son, 1) = s1.[H3]

kısmını

mal.Cells(son, "A") = s1.[G3]
mal.Cells(son, "B") = s1.[H3]

olarak değiştirirseniz düzelecektir.
 
Tamamdır. Çok teşekkür ederim elinize sağlık.
 
Geri
Üst