Skip to main content

AccessTr.neT


Excel Userformuna Access Database'den Ado İle Veri Getirme Hakkında.

Oğuz Türkyılmaz
Oğuz Türkyılmaz
6
447

Excel Userformuna Access Database'den Ado İle Veri Getirme Hakkında.

Çözüldü #1
Merhaba herkese sağlıklı günler dilerim.
Öğrenme amacıyla düzenlediğim uygulamada Excel çalışma kitabında Userform.Cari adlı formun üzerinde ki TextBox.CariKod alanına Access veritabanı Cariler Tablosu ID alanında kayıtlı son ID numarasının bir fazlasını çekmeye çalışıyorum. Fakat sorguyu bağlantıda kullanmayı beceremedim. Bu konuda yardımcı olmanızı rica ederim.

Kod:
Public con As Object
Public rs As Object
Public CariID As Integer

Sub Baglan()

Set con = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")


yol = "C:\Users\oguzt\Desktop\VBA PROJE\DB\Database_VBAOgreniyorum.accdb"
con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
yol & ";Persist Security Info=False;"
  
End Sub
  
Sub SonCariID_Getir()

Call Baglan

'Set con = CreateObject("ADODB.Connection")
'Set rs = CreateObject("ADODB.Recordset")

sqlBaglanti = "Select TOP 1 [ID] FROM Cariler ORDER BY [ID] DESC"

CariID = rs.Fields(0)

End Sub


Kod:
Private Sub UserForm_Activate()

AdoBaglan.SonCariID_Getir
TextBox_CariKod.Value = "C-000" & CariID + 1

ComboBox_Durumu.List = Array("Aktif", "Pasif")
ComboBox_Tipi.List = Array("Alıcı", "Satıcı", "Alıcı-Satıcı")

End Sub

.rar VBA PROJE.rar (Dosya Boyutu: 166,63 KB | İndirme Sayısı: 5)
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#2
kodda recordseti açtığınız yeri göremedim
rs.Open sqlBaglanti, con, 1, 3
veriyi almadan önce yukardaki kodla recordset açılmalı
2. olarak maximum ID'i bulmak için Max komutu kullanılabilir
sqlBaglanti = "Select max( [ID]) FROM Cariler " 
Cevapla
#3
(05/12/2022, 09:34)berduş yazdı: kodda recordseti açtığınız yeri göremedim
rs.Open sqlBaglanti, con, 1, 3
veriyi almadan önce yukardaki kodla recordset açılmalı
2. olarak maximum ID'i bulmak için Max komutu kullanılabilir
sqlBaglanti = "Select max( [ID]) FROM Cariler " 

Halil hocam yeminle akşam bu mesajı foruma attıktan sonra bilgisayarı kapattım ve yattım, sonra uykuya dalmadan ben sorguyu düzenledim ama benim bir şey daha yapmam lazımdı sorgu kendi kendine mi çalışacak diye sesli sesli düşünmüşüm Hanım da yeter artık uyu diyince emir demiri kesti. Img-grin. Akşam evde deneyip bilgi veririm çok teşekkürler.
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla
#4
(05/12/2022, 09:51)Oğuz Türkyılmaz yazdı: Halil hocam yeminle akşam bu mesajı foruma attıktan sonra bilgisayarı kapattım ve yattım, sonra uykuya dalmadan ben sorguyu düzenledim ama benim bir şey daha yapmam lazımdı sorgu kendi kendine mi çalışacak diye sesli sesli düşünmüşüm Hanım da yeter artık uyu diyince emir demiri kesti. Img-grin. Akşam evde deneyip bilgi veririm çok teşekkürler.

Hanımdan korkmam diyen erkek yalan söylermiş LolLolLol
Cevapla
#5
Korku demeyelim de saygı ve sevgiden, incitme korkusu diyelim)
Sorunuz aslında Excel sorusu olduğundan Excel soruları bölümüne taşınmıştır
Cevapla
#6
(05/12/2022, 09:34)berduş yazdı: kodda recordseti açtığınız yeri göremedim
rs.Open sqlBaglanti, con, 1, 3
veriyi almadan önce yukardaki kodla recordset açılmalı
2. olarak maximum ID'i bulmak için Max komutu kullanılabilir
sqlBaglanti = "Select max( [ID]) FROM Cariler " 

@halily hocam teşekkür ederim. Sorunum çözüldü. Gece sayıklamadan uyuyabilirim artık Img-grin
Access Çekirgesi 
[Resim: img-cray.gif]


Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task