Baska bir programdan exceldeki makroyu calistirma

Katılım
10 Aralık 2006
Mesajlar
26
Excel Vers. ve Dili
exel 2002 turkce
Scada programinda yazdigim vb kodlari ile bir excel dosasi aciyorum fakat bu Excel dosyasindaki makroyu Scada'dan nasil calistiracagimi bulamadim.

Yardimci olan arkadasara tesekkurler.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Application nesnesine Run tagı ekleyerek çalıştırabilirsiniz.
Örnek:
Appication.Run(varsa argümanlar1, varsa argümanlar2)
 
Katılım
10 Aralık 2006
Mesajlar
26
Excel Vers. ve Dili
exel 2002 turkce
Kod:
Dim xlApp,xlBook,Sh,NoA,indis

On Error Resume Next
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = False
Set xlBook = xlApp.Workbooks.open("C:\Documents and Settings\sero52\Desktop\Proje Veri01.xls")
Set Sh=xlBook.sheets("DATA")
Set indis=SmartTags("SIRA NO")

Sh.cells(3, 18) = SmartTags("Tag_2")
Sh.cells(3, 19) = SmartTags("Tag_3")

SmartTags("1.1").Value=Sh.cells(2, 7) 
SmartTags("1.2").Value=Sh.cells(3, 7) 
SmartTags("1.3").Value=Sh.cells(4, 7) 
SmartTags("1.4").Value=Sh.cells(5, 7) 
SmartTags("1.5").Value=Sh.cells(6, 7) 

xlBook.Save
xlBook.Close
xlApp.Quit
Set xlBook = Nothing
Set xlApp = Nothing
Galiba ben ne demek istedigini tam olarak anlayamamisim.

Acilan uygulamada frmveri adinda bir user form var ve ben bu formu onceden bir buton ile calistiriyordum fakat simdi baska bir programdan dedigin gibi run komutuyla calistirmak istiyorum.

Run komutunu ornek bir kodla nasil kullanacagimi biraz daha acabilirsen cok sevinirim.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Excel VBA'ya aşağıdakileri yazın(userform1 yerine kendi formunuzun adını yazın)
Kod:
Sub FormAc()
'önce VBA ya formunuzu açabilecek bir makro yazın
    userform1.Show
End Sub
Scada programınıza aşağıdaki kodları yazarak FormAc makrosunu çalıştırabilirsiniz.
Dikkat: Run işlem yapabilmesi için çalıştırmak istediğiniz makronun bulunduğu Excel dosyasını daha önceden açmış olmalısınız
Kod:
Sub ExcelMakrosunuCalistir()
    Dim xlApp As Object
    Set xlApp = CreateObject("Excel.Application")
    xlApp.Run (FormAc)
End Sub
 
Katılım
10 Aralık 2006
Mesajlar
26
Excel Vers. ve Dili
exel 2002 turkce
Soylediklerini yapmama ragmen olmadi bunun nedeni kullandigim scada programinin VBA'in tum ozellliklerini desteklememesi olabilirmi?

ÇÜNKÜ

Kod:
Dim xlApp As Object
Scada da yukarıdakı kodu yazdığım zaman kodun altı kırmızı olarak cızılıyor yanı degişken tanımlamasını bıle algılamıyor.
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
O zaman
Kod:
Dim xlApp
şeklinde yazın.​
 
Katılım
10 Aralık 2006
Mesajlar
26
Excel Vers. ve Dili
exel 2002 turkce
Sorumu degıstırıyorum

Exel uygulamasını actıgımda Makronun otomatık olarak çalışması mumkun mu

Eger mumkunse nasıl yapılır.

Teşekkürler
 
Katılım
22 Haziran 2005
Mesajlar
998
Excel Vers. ve Dili
Office 2007 Türkçe
Çalışmasını istediğiniz makronuzu Excel VBA'nın ThisWorbook kod editörünün Open olayına yazınız. Aşağıdaki gibi:
Kod:
Private Sub Workbook_Open()
Makro1
End Sub
 
Üst