• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

vb6 da excel makrolarının kullanılması ?

  • Konbuyu başlatan Konbuyu başlatan efeksk
  • Başlangıç tarihi Başlangıç tarihi
Katılım
13 Nisan 2008
Mesajlar
205
Excel Vers. ve Dili
Excel 2003
Arkadaşlar selamlar..

excelin visual basic bölümünde aşağıdaki gibi bi kod dizilimi kullanarak access veri tabanına bağlanıyorum ve verilerimi rahatça okuyup yazabiliyorum. Bu kullandığım kodları vb6 da bir türlü kullanamadım. Acaba bunun için ne yapmam lazım. vb6 daki kod dizilimi excelde bulunan vba dan farklımıdır.

Excelden access veri tabanına bağlanmak içn kullandığım kodlar şu şekilde...

Kod:
Private baglan As Object, rs As Object

Kod:
Sub baglanti()
Set baglan = CreateObject("adodb.connection")
baglan.Open "provider=microsoft.jet.oledb.4.0;data source=" & ThisWorkbook.Path & "\dönemsec.mdb"
End Sub

Kaydet Butonu için :
Kod:
A2 = "'" & TextBox3 & "'"


Call baglanti
Set rs = baglan.Execute("INSERT INTO dönemsec (A2) Values (" & A2 & ")")

Set baglan = Nothing: Set rs = Nothing:

MsgBox "Yeni kayıt eklendi.", vbInformation + vbOKOnly, "DemirKayıtSistemi v.1.1.-Beta"

ListView Verileri almak için;
Kod:
Private Sub listeye_al(Optional aranacak As String, Optional aranacak2 As String, Optional aranacak3 As String)

Dim X As Long, k As Integer, renk
Set baglan = CreateObject("adodb.connection")
baglan.Open "provider=microsoft.jet.oledb.4.0;data source=" & ThisWorkbook.Path & "\dönemsec.mdb"
Set rs = CreateObject("adodb.recordset")

ListView1.ListItems.Clear
ListView1.View = lvwReport
ListView1.FullRowSelect = True
ListView1.Gridlines = True
ListView1.Font.Bold = True

rs.Open "Select * from dönemsec WHERE (A2 like '%" & aranacak & "%')", baglan, 1, 1


If rs.RecordCount > 0 Then rs.movefirst
Do While Not rs.EOF
    X = X + 1
    If X Mod 2 = 0 Then renk = vbRed Else: renk = vbBlue
    ListView1.ListItems.Add , , rs(0).Value
    For k = 1 To 1
        If Not IsNull(rs(k).Value) Then
        ListView1.ListItems(X).SubItems(k) = rs(k).Value
        ListView1.ListItems(X).ListSubItems(k).ForeColor = renk
    End If
    Next k
    rs.movenext
Loop
rs.Close

End Sub

İnitialize Olay;
Kod:
Private Sub UserForm_Initialize()
    On Error Resume Next
   
    
 With ListView1.ColumnHeaders
    .Add , , "S.NO", 1
    .Add , , "Dönem (Yıl/Ay)", 235, lvwColumnLeft

    
End With
listeye_al
End Sub
 
Ben bu işin çok uğraş ve zahmetli olacğını düşünüyorum.Çüzüm üretmek için project formunuzu açılımları ile eklemeniz sizin için iyi olur.

Diğer taraftan bu konuda bizlere çok ümit bağlamayın

Bildiğim kadarıyla İlk bakışta aşağıdaki kodun yerine

ThisWorkbook.Path

bunu deneyin çünkü yukarıdaki kod vb6 da yanlış

 
Geri
Üst