• Merhaba Ziyaretçi,
    Microsoft 365 Uygulamaları ile ilgili yeni haberler, dikkat çekici konular, ilgi ile takip edeceğiniz yazılar için.

    Abone Olun
  • ESTE - Microsoft Office Eğitimleri

    Yeni yıl Microsoft Office Eğitim planlarınız için bütçenizi oluşturmadan önce ESTE eğitim kalitesi ile tanışın. 🙌
    Kullanıcıların ihtiyacı olan yazılı materyal, dosya ve video kaynağı desteğimiz ile tüm ofis çalışanlarının iş süreçlerini rahatlatacak eğitimler planlayın. 🎯
    Microsoft Office eğitimlerimiz hakkında detaylı bilgi için bize ulaşın.

    👉 Microsoft Office Eğitim Talebi

Yardım Vba ile Oluşturulan TextBox ve Buton'a Görev Verme?

syburn

Yeni Üye
Katılım
23 Tem 2019
Mesajlar
3
En iyi yanıt
0
Puanları
1
Yaş
39
Konum
Diyarbakır
Ad Soyad
Mehmet Bey
Hayırlı sabahlar arkadaşlar. Bir konuda yine bilginize ihtiyacım var. Yardımcı olursanız sevinirim.

UserForm'a kodlarla 3 adet Label, 2 adet TextBox ve 1 Adet Buton ekledim.
TextBox1 -->tbTarih isminde -----> Buna Girilecek veri Tarih formatında olacak ve mümkünse tarih girilirken nokta ( . ) işaretini otomatik kendisi eklesin.
TextBox2 -->tbGun isminde -----> Buna sadece rakam girişi olacak ve "35" sayısından büyük sayı girilmemesi tercihimdir.

CommandButton1 --> bkaydet isminde -----> Buton'a tıklanınca TextBox'lara girilen tarihten başlayarak girilen gün sayısı kadar tarihi arttırarak "O3" hücresinden 3. satır boyunca sağa doğru yazması.

Yardımcı olursanız sevinirim.
Kod:
Private Sub UserForm_initialize()

    With Tarih
        .Width = 310
        .Height = 220
    End With

Set LBaslik = Tarih.Controls.Add("Forms.Label.1")
Set Ltarih = Tarih.Controls.Add("Forms.Label.1")
Set LGun = Tarih.Controls.Add("Forms.Label.1")
Set tbTarih = Tarih.Controls.Add("Forms.TextBox.1")
Set tbGun = Tarih.Controls.Add("Forms.TextBox.1")
Set bkaydet = Tarih.Controls.Add("Forms.CommandButton.1")

    With LBaslik
    
        .Caption = "Tarih ve Gün Bilgisi Girişi"
        .Left = 55
        .Width = 200
        .Top = 10
        .Font.Name = "Times New Roman"
        .Font.Bold = True
        .Font.Size = 16
        
    End With

    With Ltarih
    
        .Caption = "Puantajın Başlayacağı Tarih"
        .Left = 10
        .Width = 150
        .Height = 20
        .Top = 70
        .Font.Name = "Times New Roman"
        .Font.Size = 12

    End With

    With LGun
    
        .Caption = "Puantajdaki Gün Sayısı"
        .Left = 10
        .Width = 120
        .Height = 20
        .Top = 100
        .Font.Name = "Times New Roman"
        .Font.Size = 12

    End With
    
    With tbTarih
    
        .Width = 120
        .Height = 20
        .Top = 64
        .Left = 170
        .Font.Name = "Times New Roman"
        .Font.Size = 13
        
    End With

    With tbGun
    
        .Width = 120
        .Height = 20
        .Top = 94
        .Left = 170
        .Font.Name = "Times New Roman"
        .Font.Size = 13
        
    End With
    
    With bkaydet
        
        .Caption = "Aktar"
        .Width = 100
        .Height = 50
        .Left = 100
        .Top = 130
        .Font.Name = "Times New Roman"
        .Font.Size = 15
        .Font.Bold = True
        
    End With

End Sub
Normalde tarihi yazdırmak için kullandığım kod aşağıdaki ancak bu olayı yukarıda dediğim gibi kodlarla oluşturulmuş buton ile yapmak istiyorum.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

' OgretmenVeri Sayfasında O3 ile AW3 hücrelerini siler
' OgretmenRapor Sayfasında E3 ile AM3 hücrelerini siler
' EkdersCizelge Sayfasında E3 ile AM3 hücrelerini siler
    For i = 1 To 35
        ThisWorkbook.Worksheets("OgretmenVeri").Cells(3, i + 14).ClearContents
        ThisWorkbook.Worksheets("OgretmenRapor").Cells(3, i + 4).ClearContents
        ThisWorkbook.Worksheets("EkdersCizelge").Cells(3, i + 4).ClearContents
    Next i

' OgretmenVeri Sayfasında O3 ile AW3 hücrelerine tarihleri yazar
' OgretmenRapor Sayfasında E3 ile AM3 hücrelerine tarihleri yazar
' EkdersCizelge Sayfasında E3 ile AM3 hücrelerine tarihleri yazar
    For i = 1 To ThisWorkbook.Worksheets("Veri").Range("A4").Value
        ThisWorkbook.Worksheets("OgretmenVeri").Cells(3, i + 14) = ThisWorkbook.Worksheets("Veri").Range("A3") + i - 1
        ThisWorkbook.Worksheets("OgretmenRapor").Cells(3, i + 4) = ThisWorkbook.Worksheets("Veri").Range("A3") + i - 1
        ThisWorkbook.Worksheets("EkdersCizelge").Cells(3, i + 4) = ThisWorkbook.Worksheets("Veri").Range("A3") + i - 1
    Next i

End Sub
 
Üst Alt