kapalı dosyaya veri kaydetme

Katılım
2 Ekim 2007
Mesajlar
359
Excel Vers. ve Dili
2010
excel form üyelerine iyi hafta sonları
sayın dentex hocam sağolsunlar yardım ederek sorunuma çözüm buldu
ancak kapalı dosyaya nasıl kayıt yapacağımı bildirmediğimden sayfa1 e kayıt yapıyor girilen veriler.
ben ayrı bir excel dosyası olan ihtiyaç listesine kayıt yapılmasını isitiyorum
bir kaç yol denedim ama devamlı hata verdiğinden yapamadım. örnek çalışmamı ekte gönderiyorum.yardımlarınız için şimdiden teşekkürler
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Exceli açtırıp öyle kayıt etmek daha doğru olur.
Bu şekilde sakıncalı oluyor.Çünkü sayısal değerleri metin olarak kaydediyor.
Bu gibi durumlar için excel veri tabnı olarak uygun değldir.
Bunun için en azından access (mdb uzantılı) dosyası kulanmanız daha doğru olur.:cool:
 
Katılım
2 Ekim 2007
Mesajlar
359
Excel Vers. ve Dili
2010
sayın hocam ilginize teşekkür ederim
sıra no ile gönderdiğim örnekteki userformadaki girdiğim verileri kaydet butonuna bastığım zaman ihtiyaç listesi dosyasına nasıl kayıt yapabilirim.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyalarını 2003 formatında yolarsanız daha çabuk yanıt alırsınız.Çünkü herkeste 2007 yok.Bendede olmadığı gibi.:cool:
 
Katılım
2 Ekim 2007
Mesajlar
359
Excel Vers. ve Dili
2010
sayın evren hocam 2007dosyamı 2003'e çevirip tekrardan ekledim.
sıra nolu userformdan girdiğim veriler ihtiyaç listesine kaydedilmesi;
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ben olsam böyle yapmazdım.
Bir listbox koyardım.
Baştan oraya aktarırdım verilerimi.
Sonra da listboxta olan bütün kayıtları ilgili olan dosyaya aktarırdım.
Programlamada bu gibi durumlar için temel mantık budur.
Eğer bunda israr ediyorsanız.
Textboxların isimleirinin son iki hanesini ilgili olduğu satırın numarasını verin
ki döngüye girip bir kerde aktaralım.mesela 10 nolu sıraya kadar textboxların isimlerini n son 2 hanesi bulunduğu sıranın rakamı olduğu halde ondan sonra 34 e atlamış.:cool:
 
Katılım
2 Ekim 2007
Mesajlar
359
Excel Vers. ve Dili
2010
hocam iyi hafta sonları burada araştırarak bir program yapmaya çalışıyorum
dğiştirdim textboxların adlarını hocam eğer böyle yapma imkanıvarsa sevinirim
ayrıca listboxla nasıl yapa bilirim,oda olabilir önemli olan doğru olanı yaparak öğrenmek hocam ilginize ve emeğinize sağlık allah razı olsun zaman ayırdığınız için
 

Ekli dosyalar

Son düzenleme:

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyanız ektedir.
her 2 dosyada ayni klasörde olmalıdır.:cool:
Kod:
Private Sub CommandButton1_Click()
Dim i As Byte, sat As Long, wb As Workbook, sh As Worksheet
Application.DisplayAlerts = False
If Workbooks.Open(ThisWorkbook.Path & "\İHTİYAÇ LİSTESİ.xls").ReadOnly = True Then
    ActiveWorkbook.Close
End If
Application.DisplayAlerts = True
Set sh = Workbooks("İHTİYAÇ LİSTESİ.xls").Sheets("Sayfa1")
sat = sh.Cells(65536, "A").End(xlUp).Row + 1
If sat + 15 >= 65533 Then
    MsgBox "Buradaki verileri sayfa alamaz." & vbLf & "Satır doldu.Kaytılar girilmedi", vbCritical, "UYARI"
    Workbooks("İHTİYAÇ LİSTESİ.xls").Close
    Exit Sub
End If
For i = 1 To 15
    If Me.Controls("adet" & Format(i, "00")) <> "" Then
        sh.Cells(sat, "A").Value = sat - 2
        sh.Cells(sat, "B").Value = CDbl(Me.Controls("adet" & Format(i, "00")).Text)
        sh.Cells(sat, "B").NumberFormat = "#,##0.00"
        sh.Cells(sat, "C").Value = CDbl(Me.Controls("sayi" & Format(i, "00")).Text)
        sh.Cells(sat, "C").NumberFormat = "#,##0.00"
        sh.Cells(sat, "D").Value = Me.Controls("malz" & Format(i, "00")).Text
        
        Me.Controls("adet" & Format(i, "00")).Text = ""
        Me.Controls("sayi" & Format(i, "00")).Text = ""
        Me.Controls("malz" & Format(i, "00")).Text = ""
        sat = sat + 1
    End If
Next i
Workbooks("İHTİYAÇ LİSTESİ.xls").Close True
MsgBox "Kayıtlar başarı ile girildi." & vbLf & _
"evrengizlen@hotmail.com", vbOKOnly + vbInformation, "E V R E N"

End Sub
 

Ekli dosyalar

Katılım
6 Kasım 2004
Mesajlar
199
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
25-07-2023
Soruyu soran arkadaş teşekkür etmeyi unutmuş galiba.
Teşekkürler Sayın @Orion1
 
Üst