• DİKKAT

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

ExecuteExcel4Macro Yöntemi ile Kapalı Dosyaya Veri Aktarma

Halit Bey,
Teşekkür ederim. Keşke önce bir deneseymişim.:oops:
 
bende kodda =sayı işaretini fazladan yapmışım düzelttim
 
Merhaba,
Ado ile veri aktarırken sayısal değerlerin önüne (') tek tırnak ekliyor. Bunu engellemenin bir yolu var mı?
 
Merhaba,
Ado ile veri aktarırken sayısal değerlerin önüne (') tek tırnak ekliyor. Bunu engellemenin bir yolu var mı?


yukarıdaki linkte bir örnek vermiştim herhalde linki iyi incelememişsiniz linki aşağıya yeniden koyuyorum

http://www.excel.web.tr/showthread.php?t=74358

bu linkte 4 nolu mesajdaki dosyada sayfa1 sayfasında listwiem1 komut duğmesi var orada açılan user formda yapılan sayısal kayıtların önünde tırnak işarati yok ama bir sorun var orada sayısal değerleri sayı olarak kayıt yapmıyor yanlızca metin olarak kayıt yapıyor
 
Sub excel4_makro_ile_veri_al()
Dim sat As Long, i As Long, sat2 As Long
sat = 2
sat2 = Application.ExecuteExcel4Macro("COUNTA('" & ThisWorkbook.Path & "\[Veri.xls]Sayfa1'!C1)")
Range("B2:B65536").ClearContents
For j = 2 To sat2
For i = 1 To 16
Cells(sat, "B").Value = Application.ExecuteExcel4Macro("'" & ThisWorkbook.Path & "\[Veri.xls]Sayfa1'!R" & j & "C" & i)
sat = sat + 1
Next
Next
MsgBox "Veriler alındı"
End Sub

Arkadaşlar Merhaba

Yukarıdaki koddaki - & ThisWorkbook.Path & - yerine ağdaki pc olan - & '\\server\stok & - adresini nasıl uygulayabiliriz.
 
Arkadaşlar Merhaba

BU konuda fikri olan biri var ise yardımlarını bekliyorum.
Denemelerimde çözemedim, eğer olur ise çok işime yarayacak.
ilgilenenlere şindiden teşekkür ediyorum.
 
Arkadaşlar Merhaba

BU konuda fikri olan biri var ise yardımlarını bekliyorum.
Denemelerimde çözemedim, eğer olur ise çok işime yarayacak.
ilgilenenlere şindiden teşekkür ediyorum.

aşağıdaki kodu bir denermisiniz

Kod:
Sub excel4_makro_ile_veri_al()
Dim sat As Long, i As Long, sat2 As Long
sat = 2
sat2 = Application.ExecuteExcel4Macro("COUNTA('\\server\stok\[Veri.xls]Sayfa1'!C1)")
Range("B2:B65536").ClearContents
For j = 2 To sat2
For i = 1 To 16
Cells(sat, "B").Value = Application.ExecuteExcel4Macro("'\\server\stok\[Veri.xls]Sayfa1'!R" & j & "C" & i)
sat = sat + 1
Next
Next
MsgBox "Veriler alındı"
End Sub
 
Hocam Merhaba

Run-time error '1004':
Application-defined or object-defined error

Diye hata verdi.
 
bide bunu denermisisn

Sub excel4_makro_ile_veri_al()
Dim sat As Long, i As Long, sat2 As Long
sat = 2
sat2 = Application.ExecuteExcel4Macro("'\\server\stok\[Veri.xls]Sayfa1'!C1")
Range("B2:B65536").ClearContents
For j = 2 To sat2
For i = 1 To 16
Cells(sat, "B").Value = Application.ExecuteExcel4Macro("'\\server\stok\[Veri.xls]Sayfa1'!R" & j & "C" & i)
sat = sat + 1
Next
Next
MsgBox "Veriler alındı"
End Sub
 
sayfada koruma varmı
 
Hocam evet koruma vardı kaldırdım veriler alındı.
Ancak verileri alacağımız dosyadan korumayı kaldıramayız.
Koruma şifresini kod ile girip hal edebilirmiyiz.
 
şifre yazan yerlere kendi şifreni yaz ve aşağıdaki kodu bir dene

Sub excel4_makro_ile_veri_al()
Worksheets(ActiveSheet.Name).Protect Password:="şifre", Contents:=False, Scenarios:=False ' sayfa korumasını aç
Dim sat As Long, i As Long, sat2 As Long
sat = 2
sat2 = Application.ExecuteExcel4Macro("COUNTA('\\server\stok\[Veri.xls]Sayfa1'!C1)")
Range("B2:B65536").ClearContents
For j = 2 To sat2
For i = 1 To 16
Cells(sat, "B").Value = Application.ExecuteExcel4Macro("'\\server\stok\[Veri.xls]Sayfa1'!R" & j & "C" & i)
sat = sat + 1
Next
Next
MsgBox "Veriler alındı"
Worksheets(ActiveSheet.Name).Protect Password:="şifre", Contents:=True, Scenarios:=True 'sayfayı koru
End Sub
 
Hocam tamam çok teşekkür ediyorum.
Kodlar da ("COUNTA('\\ ve ("'\\ şeklinde iki farklı şekilde kullanmışsınız ben diğer kodlardaki ile değiştirip kullandım.

Son çalışan halini yarın ekleyeceğim. Tekrar teşekkür ediyorum.
 
Sayın halit3
Yukarıdaki çalışmanızı kullanmaya çalışıyorum,
Yüklü Excel 2010 ve 64 bit olması sebebiyle aşağıdaki kod hata veriyor yerine kullanmam gereken kod nasıl olmalı acaba,

conn.Open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & ThisWorkbook.Path & _
"\Veri.xls;extended properties=""Excel 8.0;hdr=yes"""


Saygılarımla,
 
Sayın halit3
Yukarıdaki çalışmanızı kullanmaya çalışıyorum,
Yüklü Excel 2010 ve 64 bit olması sebebiyle aşağıdaki kod hata veriyor yerine kullanmam gereken kod nasıl olmalı acaba,

conn.Open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & ThisWorkbook.Path & _
"\Veri.xls;extended properties=""Excel 8.0;hdr=yes"""


Saygılarımla,

Bu konuya en son yaklaşık üç yıl once cevap vermişim şimdi hangi çalışmayı kullandığınızı bilemiyorum.

64 bit sorunu ile ilgili bir sürü konu başlığı var benim size önereceğim aşağıdaki linki bir inceleyin.

http://www.excel.web.tr/f117/listview-ado-caly-masy-t74358.html
 
İlginiz için teşekkür ederim, ilgili linkten sorunu çözemedim, biraz araştırmam gerekecek çözümü bulur bulmaz buradan paylaşırım,

Tekrar ilginiz için teşekkür ederim.
 
Sayın halit3
Yukarıdaki çalışmanızı kullanmaya çalışıyorum,
Yüklü Excel 2010 ve 64 bit olması sebebiyle aşağıdaki kod hata veriyor yerine kullanmam gereken kod nasıl olmalı acaba,

conn.Open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & ThisWorkbook.Path & _
"\Veri.xls;extended properties=""Excel 8.0;hdr=yes"""


Saygılarımla,

ofis 2003 için kod

Kod:
conn.Open "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" & ThisWorkbook.Path & _
"\Veri.xls;extended properties=""Excel 8.0;hdr=yes"""

ofis 2003 den sonraki sürümler için kod


Kod:
conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & "Data Source=" & ThisWorkbook.Path & _
"\Veri.xls;Extended Properties=""Excel 12.0;HDR=yes"""
 
Geri
Üst