Skip to main content

AccessTr.neT


Excelden Accesse Veri Alıp Gönderme

Excelden Accesse Veri Alıp Gönderme

#31
Evet abey böyle durumlarda verilerin ve sütunların uyumlu olması gerekiyor.Yoksa boşuna kürek sallanmış olunuyor.İndirip denemiştim sanırım sizin yöntem accesste tablo varsa exceldeki listoxtaki seçilen sayfa adı bu durumda accesstekini silip sıfırdan aktarıyordu excelden.Bu durumda hata olmamalı.Bende hatasız aktarmıştı abey.
Cevapla
#32
(13/02/2021, 21:46)hayalibey yazdı: Düzeltmeden kastınız sadece accesste sadece ilk satır başlık satırı ismini mı elle yazacağım veya silecegim.
burada kast ettiğim accessi açıp yeni alanı elle girip veri türünü ve başlığını elle girmeniz
(13/02/2021, 22:19)hayalibey yazdı: Hocam yetki sayfasında TextBoxlardaki veriyi çekmesi lazım ama  Çünkü yetki  sayfasında tüm işlemler textboxlar üzerinde yapılıyor
neden textboxlar ile yapılıyor veriler doğrudan hücrelere girilse yada metin kutusuna girilen değer metin kutusunun değiştiğinde olayına yazılacak bir kodla doğrudan hücrelere aktarılsa. bu haliyle yetki sayfası accesse aktarılsa bile veriler hücrelerde olmadığından sadece boş sayfa aktarılır
Cevapla
#33
(14/02/2021, 15:09)berduş yazdı:
(13/02/2021, 21:46)hayalibey yazdı: Düzeltmeden kastınız sadece accesste sadece ilk satır başlık satırı ismini mı elle yazacağım veya silecegim.
burada kast ettiğim accessi açıp yeni alanı elle girip veri türünü ve başlığını elle girmeniz
(13/02/2021, 22:19)hayalibey yazdı: Hocam yetki sayfasında TextBoxlardaki veriyi çekmesi lazım ama  Çünkü yetki  sayfasında tüm işlemler textboxlar üzerinde yapılıyor
neden textboxlar ile yapılıyor veriler doğrudan hücrelere girilse yada metin kutusuna girilen değer metin kutusunun değiştiğinde olayına yazılacak bir kodla doğrudan hücrelere aktarılsa. bu haliyle yetki sayfası accesse aktarılsa bile veriler hücrelerde olmadığından sadece boş sayfa aktarılır
Hocam yetki sayfası aktarilmasin soeun değil
Accesse aktarma
Excel e aktarma sorunsuz çalışsın ben baslikları ve ve veri türünü ben eklerim o konuda soeun olmaz Hocam

(14/02/2021, 11:50)feraz yazdı: Evet abey böyle durumlarda verilerin ve sütunların uyumlu olması gerekiyor.Yoksa boşuna kürek sallanmış olunuyor.İndirip denemiştim sanırım sizin yöntem accesste tablo varsa exceldeki listoxtaki seçilen sayfa adı bu durumda accesstekini silip sıfırdan aktarıyordu excelden.Bu durumda hata olmamalı.Bende hatasız aktarmıştı abey.
Zafer Hocam iş yerindeki bilgisayarda da denedim.
Veri sayfasını sadece aktar dedim
Aktarma tamam mesajı veriyor hata mesajı yok
Ama Access veri sayfası başlıklar dışında bomboş
Son Düzenleme: 14/02/2021, 22:24, Düzenleyen: hayalibey.
Cevapla
#34
(14/02/2021, 22:22)hayalibey yazdı: Veri sayfasını sadece aktar dedim
Aktarma tamam mesajı veriyor hata mesajı yok
Ama Access veri sayfası başlıklar dışında bomboş
gönderdiğiniz dosyada şimdi denedim sorunsuz aktardı verileri
Not: aslında boş satırları bile eklemiş büyük ihtimalle daha öncen var olan veriler silindiği için o satırlar hala tabloya aitmiş gibi davranmış
ama sayfadaki verileri yeni bir sayfaya kopyalayıp denediğimde tam olarak olması gereken kadar veriyi aktardı. yani aslında koda bir de boş satırları silen yeni bir prosedür de eklenmeli
Cevapla
#35
Ben Halil hocamızın dosyasını indirip denemiştim ve biraz kodları değiştirip arşivlemiştim.
Gif ekledim çalışıyor ve o dosyayı ekleyeyim bir deneyin.

[Resim: rrrr.gif]

Private Sub CommandButton1_Click()
Dim strPath As String
Dim objAccess As Object
Dim say As Integer
strPath = ThisWorkbook.Path & "\Test.accdb"

Set objAccess = CreateObject("Access.Application")
Call objAccess.OpenCurrentDatabase(strPath)
objAccess.Visible = True
    For i = 0 To Me.ListBox1.ListCount - 1
        If Me.ListBox1.Selected(i) Then
            SyfAdi = ListBox1.List(i)
            TblSay = objAccess.DCount("Name", "MSysObjects", "Name='" & SyfAdi & "' and type in (1,4,6)")
            If TblSay > 0 Then
                say = say + 1
                objAccess.DoCmd.DeleteObject acTable, SyfAdi
                objAccess.DoCmd.TransferSpreadsheet 0, 10, SyfAdi, ThisWorkbook.FullName, True, SyfAdi & "$"
            End If
        End If
    Next i
    objAccess.CloseCurrentDatabase
    objAccess.Quit
    Set objAccess = Nothing
    If say > 0 Then
        MsgBox "aktarým tamam"
    Else
        MsgBox "Veri tabaninda secilen sayfalar bulunamadi...", vbCritical, "Hata"
    End If
End Sub
.rar test.rar (Dosya Boyutu: 51,26 KB | İndirme Sayısı: 1)
Cevapla
#36
(14/02/2021, 23:01)feraz yazdı: Ben Halil hocamızın dosyasını indirip denemiştim ve biraz kodları değiştirip arşivlemiştim.
Gif ekledim çalışıyor ve o dosyayı ekleyeyim bir deneyin.

[Resim: rrrr.gif]

Private Sub CommandButton1_Click()
Dim strPath As String
Dim objAccess As Object
Dim say As Integer
strPath = ThisWorkbook.Path & "\Test.accdb"

Set objAccess = CreateObject("Access.Application")
Call objAccess.OpenCurrentDatabase(strPath)
objAccess.Visible = True
    For i = 0 To Me.ListBox1.ListCount - 1
        If Me.ListBox1.Selected(i) Then
            SyfAdi = ListBox1.List(i)
            TblSay = objAccess.DCount("Name", "MSysObjects", "Name='" & SyfAdi & "' and type in (1,4,6)")
            If TblSay > 0 Then
                say = say + 1
                objAccess.DoCmd.DeleteObject acTable, SyfAdi
                objAccess.DoCmd.TransferSpreadsheet 0, 10, SyfAdi, ThisWorkbook.FullName, True, SyfAdi & "$"
            End If
        End If
    Next i
    objAccess.CloseCurrentDatabase
    objAccess.Quit
    Set objAccess = Nothing
    If say > 0 Then
        MsgBox "aktarým tamam"
    Else
        MsgBox "Veri tabaninda secilen sayfalar bulunamadi...", vbCritical, "Hata"
    End If
End Sub

Zafer Hocam benim userformla kodları taşıyıp deneyeyim . Sonuçtan bilgi vereyim. Peki accessten Excel e de aktarma yapıyor mu.
Halil Hocam baya emek verdi. Halil Hocam siz ne dersiniz kod halkinda sizin da fikrinizi de almak isterim . Halil Hocam bu konuya çok Zamanını emeğini esirgemedi.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task