[elektro-etc] VBA help

Móczik Gábor pm_levlista at progzmaster.hu
Wed Aug 1 13:53:10 CEST 2012


2012.08.01. 13:20 keltezéssel, Kovács József írta:
> Ez a matatás kizárólag csak az excelen belülről VBA-ban jó?
>
> Én jó ideje már csak saját alkalmazásból piszkálok excelt.
> Kihasználva, hogy az excel táblát ODBC driverrel megnyitva
> sima SQL parancsokkal tudom olvasni-írni .....
>
> A program logika így nem excel VBA nyűglődés.

Lesz majd egy komplett rendszer rendes SQL adatbázisból, dedikált 
kliensprogrammal, de addig is excelből matatok sajnos.

Sok mindenre jó, de sokmindenre nem annyira, pl. adatbázis kezelésre. :-)

Különben úgy néz ki, hogy sikerült, ha megnyomom a RUN gombot, akkor 
elvégzi amit akarok. De hogy futtassam automatikusan?
Célszerűen ha bármely forrásadat (Range) változik, le kéne futtatni.

Sub CalcWorkdayList()
     Dim wks As Worksheet
     Dim daylist As Range
     Dim dayflag As Range
     Dim wkdaylist As Range

     Set wks = Worksheets("alapadatok")

     Set daylist = wks.Range("MonthDayList")
     Set dayflag = wks.Range("MonthDayWkdayFlags")
     Set wkdaylist = wks.Range("WorkdayList")

     Dim i As Integer
     Dim j As Integer

     j = 1
     For i = 1 To 31
         If dayflag.Cells(i, 1) = 1 Then
            wkdaylist.Cells(j, 1) = daylist.Cells(i, 1)
            j = j + 1
         End If
     Next i
     For i = j To 31
         wkdaylist.Cells(i, 1) = ""
     Next i

End Sub



More information about the Elektro-etc mailing list