Kod hatası

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
Private Sub CommandButton1_Click()

Worksheets("Haftalik").Cells(4, 2) = TextBox1.Value
Worksheets("Haftalik").Cells(4, 3) = TextBox2.Value
Worksheets("Haftalik").Cells(5, 2) = TextBox4.Value
Worksheets("Haftalik").Cells(5, 3) = TextBox5.Value
Worksheets("Haftalik").Cells(6, 2) = TextBox7.Value
Worksheets("Haftalik").Cells(6, 3) = TextBox8.Value
Worksheets("Haftalik").Cells(7, 2) = TextBox10.Value
Worksheets("Haftalik").Cells(7, 3) = TextBox11.Value
Worksheets("Haftalik").Cells(8, 2) = TextBox13.Value
Worksheets("Haftalik").Cells(8, 3) = TextBox14.Value
Worksheets("Haftalik").Cells(9, 2) = TextBox16.Value
Worksheets("Haftalik").Cells(9, 3) = TextBox17.Value
Worksheets("Haftalik").Cells(12, 2) = TextBox22.Value
Worksheets("Haftalik").Cells(4, 7) = TextBox24.Value
Worksheets("Haftalik").Cells(4, 8) = TextBox25.Value
Worksheets("Haftalik").Cells(4, 9) = TextBox26.Value
Worksheets("Haftalik").Cells(4, 10) = TextBox27.Value
Worksheets("Haftalik").Cells(4, 11) = TextBox28.Value
Worksheets("Haftalik").Cells(4, 12) = TextBox29.Value
Worksheets("Haftalik").Cells(5, 7) = TextBox30.Value
Worksheets("Haftalik").Cells(5, 8) = TextBox31.Value
Worksheets("Haftalik").Cells(5, 9) = TextBox32.Value
Worksheets("Haftalik").Cells(5, 10) = TextBox33.Value
Worksheets("Haftalik").Cells(5, 11) = TextBox34.Value
Worksheets("Haftalik").Cells(5, 12) = TextBox35.Value
Worksheets("Haftalik").Cells(6, 7) = TextBox36.Value
Worksheets("Haftalik").Cells(6, 8) = TextBox37.Value
Worksheets("Haftalik").Cells(6, 9) = TextBox38.Value
Worksheets("Haftalik").Cells(6, 10) = TextBox39.Value
Worksheets("Haftalik").Cells(6, 11) = TextBox40.Value
Worksheets("Haftalik").Cells(6, 12) = TextBox41.Value
Worksheets("Haftalik").Cells(7, 7) = TextBox42.Value
Worksheets("Haftalik").Cells(7, 8) = TextBox43.Value
Worksheets("Haftalik").Cells(7, 9) = TextBox44.Value
Worksheets("Haftalik").Cells(7, 10) = TextBox45.Value
Worksheets("Haftalik").Cells(7, 11) = TextBox46.Value
Worksheets("Haftalik").Cells(7, 12) = TextBox47.Value
Worksheets("Haftalik").Cells(8, 7) = TextBox48.Value
Worksheets("Haftalik").Cells(8, 8) = TextBox49.Value
Worksheets("Haftalik").Cells(8, 9) = TextBox50.Value
Worksheets("Haftalik").Cells(8, 10) = TextBox51.Value
Worksheets("Haftalik").Cells(8, 11) = TextBox52.Value
Worksheets("Haftalik").Cells(8, 12) = TextBox53.Value
Worksheets("Haftalik").Cells(9, 7) = TextBox54.Value
Worksheets("Haftalik").Cells(9, 8) = TextBox55.Value
Worksheets("Haftalik").Cells(9, 9) = TextBox56.Value
Worksheets("Haftalik").Cells(9, 10) = TextBox57.Value
Worksheets("Haftalik").Cells(9, 11) = TextBox58.Value
Worksheets("Haftalik").Cells(9, 12) = TextBox59.Value



For i = 4 To 9
Controls("Textbox" & (i - 3) * 3) = Sayfa1.Cells(i, "d")
Next i

For i = 2 To 4
Controls("Textbox" & (i + 17)) = Sayfa1.Cells(11, i)
Next i
TextBox22.Text = Sayfa1.Cells(12, 2)
TextBox23.Text = Sayfa1.Cells(12, 4)
For i = 7 To 12
Controls("Textbox" & (i + 53)) = Sayfa1.Cells(11, i)
Next i
say = 0
For i = 17 To 22
ekle = 0:
If i Mod 2 = 0 And i <> 22 Then ekle = 1
For ii = 2 To 4 + ekle
Controls("Textbox" & (66 + say)) = Sayfa1.Cells(i, ii)
say = say + 1
Next ii
Next i

For Each i In Controls
If i.Name Like "TextBox" & "*" Then
Controls(i.Name).TextAlign = 3
If Controls(i.Name).Value <> "" Then
Controls(i.Name) = FormatCurrency(CSng(Controls(i.Name).Value), 2)
End If
End If
Next i

End Sub

Sayın hocalarımız. Bir arkadaşa yardımcı olmaya çalışıyorum. KAYDET diye buton koyulmuş. Bu kod var. Kaydet deyince hata veriyor. Bu satırda.
Neden acaba.
Saygılarımla.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,358
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Hata veren satır sayı formatını değiştiriyor.
Eğer değer yoksa çalışmasın diye satır yazılmış ama bu yeterli değil, değerin aynı zamanda bir rakam olması gerekiyor.
Onun için değer kontrolünü aşağıdaki şekilde yapmalısınız.

Aşağıdaki satırı silin
Kod:
If Controls(i.Name).Value <> "" Then
yerine aşağıdakini kopyalayın.
Kod:
If isnumeric(Controls(i.Name) ) Then
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
Merhaba.

Hata veren satır sayı formatını değiştiriyor.
Eğer değer yoksa çalışmasın diye satır yazılmış ama bu yeterli değil, değerin aynı zamanda bir rakam olması gerekiyor.
Onun için değer kontrolünü aşağıdaki şekilde yapmalısınız.

Aşağıdaki satırı silin
Kod:
If Controls(i.Name).Value <> "" Then
yerine aşağıdakini kopyalayın.
Kod:
If isnumeric(Controls(i.Name) ) Then
Hocam, artık hata vermiyor. Teşekkür ederim. Yalnız Excelde gözüküyor ama userformda gözükmüyor sayılar.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
@Muzaffer Ali hocam, dosyayı yüklesem. Size zahmet bir bakabilir misiniz.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,358
Excel Vers. ve Dili
2019 Türkçe
Eski kodlardaki aşağıdaki kısım
Kod:
If Controls(i.Name).Value <> "" Then
Controls(i.Name) = FormatCurrency(CSng(Controls(i.Name).Value), 2)
End If
Aşağıdaki gibi olmalı.

Kod:
If IsNumeric(Controls(i.Name)) Then
    Controls(i.Name) = FormatCurrency(CSng(Controls(i.Name).Value), 2)
Else
    Controls(i.Name) = FormatCurrency(0, 2)
End If
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
Eski kodlardaki aşağıdaki kısım
Kod:
If Controls(i.Name).Value <> "" Then
Controls(i.Name) = FormatCurrency(CSng(Controls(i.Name).Value), 2)
End If
Aşağıdaki gibi olmalı.

Kod:
If IsNumeric(Controls(i.Name)) Then
    Controls(i.Name) = FormatCurrency(CSng(Controls(i.Name).Value), 2)
Else
    Controls(i.Name) = FormatCurrency(0, 2)
End If
Hocam, olmadı. Userfomda gözükmüyor yine. Size de zahmet veriyorum ama.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,358
Excel Vers. ve Dili
2019 Türkçe
Kayıt ile ilgili herhangi bir değişiklik yapmadım ben.
Daha önce KAYDET VE KAPAT a basınca kaydediyor muydu?

Müsait bir zamanda bakacağım.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
Kayıt ile ilgili herhangi bir değişiklik yapmadım ben.
Daha önce KAYDET VE KAPAT a basınca kaydediyor muydu?

Müsait bir zamanda bakacağım.
Kaydetmiyordu hocam.
Zahmet olacak hocam. Teşekkür ederim.
 

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,311
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Altın Üyelik Bitiş Tarihi
31-01-2026
@Muzaffer Ali hocam. Bir öğretmen arkadaşımız bir tablo göndermiş. Şu an lazımmış. Benim Düşeyara iyi değil. Zahmet olmazsa bakabilir misiniz.
 
Üst