excel tabloyu access'e gönderme [Archive] - Excel Forum

PDA

Tüm Versiyonu Göster : excel tabloyu access'e gönderme


akd
06-06-2006, 14:06
Merhaba arkadaşlar,
access'de olan excelde çözümle olayı,
excelde varmı acaba, yoksa nasıl yapabiliriz.
excelde aluşturduğum, 75 sutun ve 50 satırlık bir tablom var bunu
olduğu gibi access'e nasıl gönderebilirim.
Yardımcı olacak arkadaşlara şimdiden çok teşekkürlerimi sunarım...

ahmetyurtkan
06-06-2006, 14:25
accessdan dosya/veri al/dış veri al dan yapabilirsin

akd
06-06-2006, 15:25
SELAM ahmetyurtkan,
alan isimlerini tanımladıktan sonramı ?

sandalet
23-06-2006, 12:10
arkadaşlar bu konu çok sorulmasına ragmen kimsenin tam bir bilgisi yok resimli açıklama yapacak bir babyigit yokmu :yardim:

atkbursa
23-06-2006, 15:22
dosyayı alacağın access i aç dosya menüsünden dış veri al/al/dosya türünü excel seç dosyanı işaretle ve ekrandaki seçenekleri seçerek işlemini tamamla access excel dosyasını veri tabanına ekleyecektir.
(kusura bakmayın verdiğim cevap daha önce verilmiş dikkatsizlikten görememişim)

sandalet
23-06-2006, 18:08
sayın atkbursa dediginizi harfiyen yapmama ragmen exceldeki tüm sütünları tek bir sütün olarak alt alta atıyor bunu düzeltmenin çaresi varmı acaba

şimdiden teşekkürler :dua:

Qene
23-06-2006, 22:22
[vb:1:6175245c63]Sub ExcelSayfaAccesseKopyala()
Dim Baglan As Object
Dim Komut As String
Dim Kaynak_Dosya As String
Dim Hedef_Dosya As String
Set Baglan = CreateObject("ADODB.connection")
Kaynak_Dosya = "E:\Baho.xls" 'Buraya Dosyanızın Olduğunu Yolu Yazınız.
Hedef_Dosya = "E:\Baho.mdb" ' Buraya da Access Dosyanızın Yolunu.
Baglan.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Kaynak_Dosya & ";" _
& "Extended Properties=""Excel 8.0;HDR=Yes"""
Komut = "SELECT * INTO [;DATABASE=" & Hedef_Dosya & "].[YeniTablo1] FROM [Veriler$]" 'Bu Sayfa verilerinizin kayıtlı Olduğu Sayfa Adı
Baglan.Execute Komut
End Sub[/vb:1:6175245c63]

Qene
23-06-2006, 22:29
Son mesajınızı okuyunca açıklama yapayım dedim:
Bu kodu Access e kopyalamak istediğiniz çalışmanızın içine ekleyeceğiniz bir module yapıştırın.
Tools / References i seçip.
Microsoft ActiveX Data Objects en yüksek numara olan Library seçin.
Makroyu çalıştırdığınızda işlem gerçekleşecek.
Access kapalı olsun.
Umarım işinizi görür..

akd
30-06-2006, 16:58
Çok çok teşekkürler gene kardeş,
cevabınızı yeni gördüm , yarın denerim ,
ilginizden dolayı çok teşekkür ederim.
Ben bir sicil çalışması yapmak istiyorum, istenen kriterler excelde kayıtlı bunları tek tek access işlemek bayaa zoruma gittigi için böyle bir çözüm arıyorum .
teşekkürler...

selami güzel
30-06-2006, 23:24
selam sn.akd
ekte'ki kod lar excel'den access 'e kayıt gönderir.
Önemli:
kodlarda 'ki alan adları ile access tablonda ki alan adları kesinlikle
aynı olmalı.

saygılar.

Private Sub CommandButton4_Click()
' exports data from the active worksheet to a table in an Access database
' this procedure must be edited before use
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
' connect to the Access database

Dim strAnswer As VbMsgBoxResult
strAnswer = MsgBox("onaylayınız ?", vbQuestion + vbYesNo, " Lütfen Kontrol Ediniz!")
If strAnswer = vbNo Then
Exit Sub
End If


Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=D:\klasör adı\dosya adı.mdb;"
' open a recordset
Set rs = New ADODB.Recordset
rs.Open "Genel", cn, adOpenKeyset, adLockOptimistic, adCmdTable
' all records in a table
r = 60 ' the start row in the worksheet
Do While Len(Range("A" & r).Formula) > 0
' repeat until first empty cell in column A
With rs
.AddNew ' create a new record
' add values to each field in the record
.Fields("Adı Soyadı") = Range("A" & r).Value
.Fields("Baba adı") = Range("B" & r).Value
.Fields("Doğum yeri") = Range("C" & r).Value

' istediğiniz kadar kayıt ekleyebilirsiniz...
.Update ' stores the new record
End With
r = r + 1 ' next row
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
'bu bölümde kayıt tan sonra hücrelerdeki verileri silebilirsiniz...
Range("E17:E47,F17").Select
Range("E17:E47,F17").Select
Selection.ClearContents
'kayıt ve hücreler silinditen sonra imlecin gitmesini istediğiniz hücre no...
Range("E17").Select ' kayıtlar access 'e gönderildikten sonra imlecin actif olmasını istidiğiniz hücreye gider.
Application.ScreenUpdating = True


End Sub

Qene
02-07-2006, 23:50
Selami Bey iyi açıklamış.
Bu arada nick'im QENE dir, gene değil.. :D
Saygılar

akd
25-07-2006, 09:02
Merhaba arkadalar,
Özür dilerim sayın Qene,
Cevaplarınız için çok çok teşekkür ederim

alan adları ile beraber göndere bilirmiyiz,
ilginiz için çok çok teşekkürler Sayın Qene, Selami Güzel

Qene
25-07-2006, 09:27
Alan adları olarak göndermek isterseniz; excel in ilk satırına başlık tanımlarsanız Access te Alan olarak düzenleyecektir. Kolay gelsin..

akd
25-07-2006, 15:56
Slm Qene ,
Kod üzerinde nasıl yapacağımı gösterebilirmisiniz, bir zahmet
Teşekkürler...

Qene
25-07-2006, 16:53
Kod üzerinde yapmanız gereken;

Önce,

[vb:1:e6b89e6a33]Kaynak_Dosya = "E:\Baho.xls" 'Buraya Dosyanızın Olduğunu Yolu Yazınız.
Hedef_Dosya = "E:\Baho.mdb" ' Buraya da Access Dosyanızın Yolunu.[/vb:1:e6b89e6a33]

Bu alanları kendinize uyarlamak.

Sonra,
[vb:1:e6b89e6a33]FROM [Veriler$]" 'Bu Sayfa verilerinizin kayıtlı Olduğu Sayfa Adı[/vb:1:e6b89e6a33]

Veriler yazan kısma, sizin sayfa isminizi tanımlamanız olacak.

Excel de ise A1, B1, C1, ..... Hücrelerinde başlıklarınız var ise otomatik olarak alan ismi olarak Access e aktarılacaktır.
Kolay gelsin.

akd
27-07-2006, 10:14
Merhaba sayın Qene kardeş,
Özür dilerim, sizide yoruyorum
ama kodu çalıştıramadım dosyayı ekte gönderiyorum,
bir zahmet bakarsanız çok sevinirim.
kodlar bende kırmızı oldu ve kesinlikle çalışmadı.
Çok teşekkürler, hayırlı çalışmalar
Kandiliniz Mubarek Olsun.
Sitedeki bütün arkadaların kandilini kutlarım...

Qene
27-07-2006, 10:26
Olmamasının nedeni olarak gözüme çarpan ":" işareti olabilir. Verideki bilgilerin uzunluğu olabilir. Yakinlar için ayrı bir database kullanmanızı öneririm.
Bir de kullandığınız başlıklarda Türkçe karakterden kaynaklanabilir. Veritabanınızı düzenleyip denerseniz olacaktır. Kolay gelsin..

TheBest
31-07-2006, 18:55
kodlar bende kırmızı oldu ve kesinlikle çalışmadı.


Bu kodları forumdan alıp VBE sayfanıza yapıştırırken meydana gelen bir olay.
Kod satırlarını sola hizalarsan kırmızılık gidecek, kodlar çalışacaktır.

Sayın Qene, sizi hazırlamış olduğunuz güzel kodlardan dolayı tebrik ederim...

Yüksel Varlı
01-08-2006, 00:07
Sevgili Qene,
Excel dosyasında değişiklik yaptıktan sonra makroyu çalıştırınca eski mdb. tablosunun üzerine kayıt yapmıyor. "Zaten yeni sayfa 1 var." diye bir uyarı veriyor. Acaba var olan tablonun üzerine yazmak mümkün mü?
Selamlar

Qene
01-08-2006, 06:52
O uyarıdan sonra Evet i tıklarsanız değişiklik yapmış olacaktır..

akd
01-08-2006, 07:27
Merhaba Sayın qene kardeş,
elinize sağlık sorunumu çözdüm kodları sola yanaştırınca kırmızılık gitti ,
ve kod çalıştı.
çok çok teşekkürler..

TheBest
01-08-2006, 09:43
Bu kodları forumdan alıp VBE sayfanıza yapıştırırken meydana gelen bir olay.
Kod satırlarını sola hizalarsan kırmızılık gidecek, kodlar çalışacaktır.

Merhaba Sayın qene kardeş,
elinize sağlık sorunumu çözdüm kodları sola yanaştırınca kırmızılık gitti ,
ve kod çalıştı.
çok çok teşekkürler..

Sayın akd, burada teşekkürü hakkeden sadece sayın Qene mi acaba?
Ayrıca sayın Qene'nin verdiği kodları başka forumlarda da gördüm sanki...

akd
01-08-2006, 10:24
Merhaba Sayın TheBest,
Bana bu formda yardımcı olan bütün arkadaşlara çok çok teşekkür ederim,
Sayın qene başka formdan almış bana yönlendirmiş, yapmayada bilirdi,
sitede yüzlerce insan soruyu görüp geçerken, sayın qene ilgilenmiş sizce teşekkür etmemeliyim.?
Selamlar...

Qene
01-08-2006, 10:42
Sevgili TheBest..
Derdiniz üzüm yemek değil de bağcıyı dövmekse, eywallah :bravo:
Ama mesajlarımı pembe gözlüklerlee ya da art niyetsiz okursanız, kodları sahiplenmediğimi görmüş olacaksınız. Sadece kodları yapıştırıp, nasıl kullanacağına dair açıklama yaptım. Önemli olan kişilerin sorunlarının çözülmesi değil midir? Yok siz ben ben ben diyecekseniz, buyrun meydan sizin.. :bad: Kodları Sola yanaştırdığınız için ben size teşekkür ederim Sayın akd adına.. He bu arada madem başka bir forumda gördünüz bu kodları, neden arkadaşa yardım etmediniz? Çok istiyorsanız kodları yazanın ismini ve soyismini de yazayım..
Ne dersiniz?

TheBest
01-08-2006, 11:38
Kalsın derim, sevgili Qene.
Beni kodların asıl sahibinin ne adı ne de soyadı hiç ilgilendirmiyor. Amacım ise polemik hiç değil.
Forumlarda uyulması gereken bazı kuralları vardır.
Şöyle ki başka bir forumdan alıntı yapacaksan, kod sahibini belirtmesen bile alıntı olduğunu belirtmek uygun düşer. Bu gibi durumlarda www.excel.web.tr kalitesinden hiç bir şey kaybetmez.
Neden ben kodları gördüğüm halde cevap yazıp akdye yardımcı olmadım?
Çünkü iyi bilmediğim konulara bulaşmak istemem, akabinde gelebilecek sorulara cevp vermeme gibi bir durum sözkonusu.

Qene
01-08-2006, 12:58
Konunun iyi bilinip bilinmemesi mevzu bahis değil. Halen Alıntı olayına takmış durumda olmanız da, size söyleyecek başka bir sözüm olamayacağını gösterir. Kalite olayı ise ne alaka onu anlayamadım :? Hakkınızı helal edin, bu konuşma sonlansın.

Haluk
01-08-2006, 13:08
Mesaj kilitlenmiştir.


Özel Arama