Kullanıcı adı

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,077
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
Evet doğrudur.. Fakat SELECT kullanmanıza gerek yok.. İlgili hücreye direkt veri yazdırma işlemi yapabilirsiniz.. Zira SELECT kodun yavaş çalışmasına sebep olmaktadır.
Hocam şu şekilde yaptım ama (sonunda başardım) sayfa seçme bölümünde hata veriyor. Yani YEDEK yerine, örneğin Sayfa4 yazsam çalışıyor. YEDEK yazınca çalışmıyor. YEDEK sayfası gizli olduğu için mi acaba?


Kod:
Private Sub cmbGiris_Click()
    If dogrumuKullaniciAd_Sifre(Kullanici_Giris) Then
        Application.Visible = True
        Sheets("YEDEK").Select
        Dim SonSat As Long
        SonSat = Range("H" & Rows.Count).End(xlUp).Row + 1
        Cells(SonSat, "H") = cboKullanici.Value
        Unload Me

        MsgBox "H O Ş G E L D İ N İ Z... " & vbCrLf & _
            " " & vbCrLf & _
            "Lütfen kullanıcı şifrenizi paylaşmayınız", vbInformation, "muratgunay48"
    End If
End Sub
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,534
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
O bölümü işaretlerken amacım o satırı kullanmayın anlamındaydı. Ama siz direkt .Select kısmını silerek tamamen hatalı bir işlem yapmışsınız.

Bunlar hep kopyala-yapıştır yapmaktan kaynaklanıyor...

Ordan burdan kodları alıp derlemeye çalışınca hatalar ortaya çıkmaya başlıyor..

VBA tarafında kendinizi geliştirmek istiyorsanız MAKRO KAYDET yöntemi size katkı sağlayacaktır..

Bir sayfadaki hücreye veri yazmak-silmek-biçimlendirmek için o sayfayı seçmenize gerek yok...

Eğer bir hücreye veri yazmak istersek temel olarak aşağıdaki satır yeterlidir.

C++:
Range("A1") = "Deneme"
Bu komut satırı aktif sayfa hangisi ise o sayfanın A1 hücresine Deneme yazar.

Eğer siz komutu aşağıdaki gibi yazarsanız bu sefer kod Sayfa1 sayfasının A1 hücresine Deneme yazacaktır. Gördüğünüz gibi SELECT kullanmadık. Yani sayfa seçmedik.

C++:
Sheets("Sayfa1").Range("A1") = "Deneme"
Bu son kod satırının başına kitap adı ekleyerek farklı açık excel dosyaları arasında bile işlem yapabilirsiniz..

Yani seçim (SELECT) yapmanıza gerek yok..

Bu aşamadan sonra kodları tasarlayabileceğinizi düşünüyorum. En azından beklentim bu yönde... (Çok zorlanırsanız yapay zeka modülüne (ChatGPT) gerekli kodları yazdırabilirsiniz..)
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,077
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2025
O bölümü işaretlerken amacım o satırı kullanmayın anlamındaydı. Ama siz direkt .Select kısmını silerek tamamen hatalı bir işlem yapmışsınız.

Bunlar hep kopyala-yapıştır yapmaktan kaynaklanıyor...

Ordan burdan kodları alıp derlemeye çalışınca hatalar ortaya çıkmaya başlıyor..

VBA tarafında kendinizi geliştirmek istiyorsanız MAKRO KAYDET yöntemi size katkı sağlayacaktır..

Bir sayfadaki hücreye veri yazmak-silmek-biçimlendirmek için o sayfayı seçmenize gerek yok...

Eğer bir hücreye veri yazmak istersek temel olarak aşağıdaki satır yeterlidir.

C++:
Range("A1") = "Deneme"
Bu komut satırı aktif sayfa hangisi ise o sayfanın A1 hücresine Deneme yazar.

Eğer siz komutu aşağıdaki gibi yazarsanız bu sefer kod Sayfa1 sayfasının A1 hücresine Deneme yazacaktır. Gördüğünüz gibi SELECT kullanmadık. Yani sayfa seçmedik.

C++:
Sheets("Sayfa1").Range("A1") = "Deneme"
Bu son kod satırının başına kitap adı ekleyerek farklı açık excel dosyaları arasında bile işlem yapabilirsiniz..

Yani seçim (SELECT) yapmanıza gerek yok..

Bu aşamadan sonra kodları tasarlayabileceğinizi düşünüyorum. En azından beklentim bu yönde... (Çok zorlanırsanız yapay zeka modülüne (ChatGPT) gerekli kodları yazdırabilirsiniz..)
Anladım hocam. İlginize teşekkür ederim.
 
Üst