syburn
Yeni Üye
- Katılım
- 23 Tem 2019
- Mesajlar
- 3
- En iyi yanıt
- 0
- Puanları
- 1
- Yaş
- 41
- 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.
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.
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
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