Telefonszámunk: 1-472-0679

programok, makrok összeegyeztethetősége

Kezdőlap Fórumok Excel programozás programok, makrok összeegyeztethetősége

3 bejegyzés megtekintése - 1-3 / 3
  • Szerző
    Bejegyzés
  • #4970
    Potus
    Felhasználó

      Sziasztok!
      Létezik, hogy bizonyos programok, makrok zavarják egymás műkődését? Egy oldalon működtetnék egy kisebb tickert, egy órát és egy visszaszámlálót. Az utóbbi kettő mintha nem viselné el a tickert. Ha fut a ticker az órák megállnak.

      Potus

      #4971
      Titok
      Felhasználó

        Szia!

        Szerintem egyszerre két makrót nem tudsz futtatni. Márpedig a tickeredben az Ubound függvény folyamatosan frissíti a képernyőt, amíg fut a makród.
        A kettőt egybe kellene használnod, akkor mehetne egyszerre, mert most két külön makró van, és az egyszerre nem tud futni. Vagy hívd meg egy függvénnyel az órát külön a programban, és akkor minden lépésben frissitsd az óra állását is.
        Ez olyan, mintha az evés és az ivás makrót egyszerre akarnád, hogy menjen. Vagy eszel, vagy iszol. Ha pl tejet akarsz inni kiflievés közben, akkor is a kiflievés programod rágás része felfüggesztésre kerül, amíg iszol, majd folytatod tovább a rágást.
        Itt is ugyanúgy kell eljárni.

        #4974
        Potus
        Felhasználó

          Hello Titok!

          Mint már az eddigiekből is kiderülhetett annyira nem vágom még ezt a témát mint az az iménti hozzászólásodból következne 🙂 Úgy hogy segítségre lenne szükségem. Ezt a két macrot ( vagy ez nem is két macro???) kellen egy helyen üzemeltetnem.

          Sub Ticker()
          Application.Calculation = xlCalculationManual
          Dim tMsg As String, tCell As Range, tLen As Long, tPos As Long
          Dim Start, Delay
          Set tCell = Range(„L11”)
          tMsg = Range(„N16”)
          With tCell.Font
          .Name = „Courier New”
          .FontStyle = „Regular”
          .Size = 10
          End With
          tCell.ColumnWidth = Round(tCell.ColumnWidth, 1)
          tLen = tCell.ColumnWidth – 1
          Do
          Start = Timer
          If tPos > Len(tMsg) Then
          tPos = 1
          Delay = Timer + 1
          Else
          tPos = tPos + 1
          Delay = Timer + 0.2

          End If
          Do While Timer < Delay
          DoEvents
          tCell.Value = Mid(tMsg, tPos, tLen)
          Loop
          Loop

          End Sub

          Sub worksheet_change(ByVal target As Range)
          Application.Calculation = xlCalculationAutomatic
          End Sub
          Dim TimerActive As Boolean
          Sub StartTimer1()
          Start_Timer1
          End Sub
          Private Sub Start_Timer1()
          Dim TimerActive As Boolean
          TimerActive = True
          Application.OnTime Now() + TimeValue(„00:00:01”), „Timer1”
          End Sub
          Private Sub Stop_Timer1()
          TimerActive = False
          End Sub
          Private Sub Timer1()
          Dim TimerActive As Boolean
          If TimerActive Then
          Sheets(„Munka1”).Cells(1, 1).Value = Time
          Application.OnTime Now() + TimeValue(„00:00:01”), „Timer1”
          End If
          End Sub

          Előre is köszi a sokadik segitséget! Potus

        3 bejegyzés megtekintése - 1-3 / 3
        • Be kell jelentkezni a hozzászóláshoz.