VB Ye Excell Açtırmak
-
Arkadaşlar ben visul basic teki bir projeme exel dosyası açtırmam gerek ama nası olcak hiç bir fikrim yok bilen varsa kolay yoldan anlatabilirmi acaba!!!!!!!!
-
shell "c:\deneme.xls"
bunu yazarsan açılır -
runtime error 5 invalid procedure call or argument
abi bu hatayı verio öle ne bu -
ertan YUH ARTIK a.q. hacim sen programin icine importmu ediceksin yoksa once excelli acip sonra diger dosyayımı actiricaksin
-
sanırım shell exe den başka birşey açmıyor, ya eskiden böyle birşey yaptığımı hatırlıyorum, kendi eklediğim dosyaları çalıştırma şekli falan.normal dosyalar çalışıyordu sanırım... neyse bakalım bi
-
zamanında bende aradıydım bayaa..Al arsivden buldum sana
'formuna bir command button ve acilacak olan dosyanın yazıldığı _
bir textBox ekleyerek command buttonun içine şunları yazabilirsin_
Private Sub Command1_Click()
Dim XL As Object
Set XL = CreateObject("Excel.Application")
XL.Workbooks.Add
XL.Visible = True ' boş bir excel sayfası açılmış oldu
'buradan sonra açmak istediğin excel dosyasını ister, kod içinde yazabilir istersen textBox'dan alabilirsin, _
burada textboxtan alınıyor..
Dim acilacakDosya As String
acilacakDosya = text1.Text 'text1'in içinde açılacak dosyanın _
ismi yazıyor. burayı bildiğin başka bir yolla da yapabilirsin
XL.Workbooks.Open FileName:=acilacakDosya ' belirlediğimiz dosya excelde açılmış oldu
'buradan sonra tak boyutlu yada iki boyutlu bir dizi tanımlayarak _
verileri excelden okutabiliriz
' örneğin burada iki boyutlu bir dizi tanımlayarak verileri alıyorum
Dim veriler(100, 100)
'artık bir döngü ile verileri alabiliriz
Dim satir, sutun As Integer
For satir = 0 To 100
For sutun = 0 To 100
veriler(satir, sutun) = XL.cells(satir, sutun) ' NOT: burada bu işlemin tersini yaparak excelde hücrelere veri yazdırman da mümkün
Next
Next
End Sub
NOT: burada acılan excel dosyasının birinci sayfası üzerinden işlem görülür. diğer sayfalarda işlem yapacaksan, şu kodu eklemelisin,
XL.Sheets(2).Select ' ikinci sayfa aktif olur.
'kolay gelsin..........
-
oke sorunu buldum :)
bende excel yüklü olmadığı için excelde deneyemedim, bunu txt üzerinde yaptım
şimdi butona veya formun loadolayına şunu yaz, tabii c de deneme.txt olsun, bu şekilde çalışıyor
Shell "notepad.exe " & "c:\deneme.txt",1
şimdi bunu excel içinde yapabiliriz sanırım
Shell "c:\program.....\excel.exe" & "c:\deneme.xls",1
bir dene bakalım :)
-
benim dediğim daha basit (tabii çalışırsa)
demek bunun için baya kod yazmak gerekirmiş.. bilgim yoktu böyle birşey de vutkubay
kod için sağol.. inceleyelim -
bu otamatik açılma yani notpad i açmana falan gerek yok normal mouse ile tıklarmış gibi açar
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Sub Command1_Click()
cd1.Filter = "Tüm Dosyalar |*.*|" 'bitane coomand dialog eklecd1.ShowOpen
txtFilename = cd1.FileName 'command dialog eklemezsen c11.filename yerine "c:\kemal.xml"gibi dosya yolunu yazIf txtFilename.Text = "" Then
MsgBox "Please Enter or select a filename", vbInformation, "KEMALPERK"
Else
TCommand = ShellExecute(Me.hwnd, vbNullString, txtFilename, vbNullString, "", 1)
If Dir(txtFilename) = "" Then ' See if the file is here
MsgBox "Dosya" & " " & txtFilename & " " & "Bulunamıyor.", vbInformation, "KEMAL PERK" ' Will Display when now file found
End If
End If
End Sub