Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1404to1408
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Macro nur 1 mal die Woche ausführen

Macro nur 1 mal die Woche ausführen
29.01.2015 09:48:48
Vulferin
Hallo Zusammen,
wie kann ich ein Macro nur 1 mal die Woche ausführen lassen ?
Ich hab das hier gefunden
  • 
    Private Sub Workbook_Open()
    If ISOWeek(Date) 
    Function ISOWeek(dat As Date) As Integer
    Dim dbl As Double
    With WorksheetFunction
    ISOWeek = Fix((dat - .Weekday(dat, 2) - _
    DateSerial(Year(dat + 4 - _
    .Weekday(dat, 2)), 1, -10)) / 7)
    End With
    End Function

  • Geht das auch ohne abfrage in A1 ?

    10
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 10:23:36
    Hajo_Zi
    benutze OnTime

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 10:27:55
    Vulferin
    Kannst du mir da ein Beispiel nennen ?
    Da ich VBa wenn ich den Code sehe verstehen kann aber nicht selbst Bilden kann :(

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 11:05:00
    Hajo_Zi
    ich war davon ausgegangen das Du Dich mit Google auskennst, jedenfalls laut ersten Beitrag.
    Option Explicit
    Public Const DaZeit As Date = 7                     ' Zeitabstand
    Public DaEt As Date                                 ' nächste Start
    ' In Tabelle2 im Bereich C7 bis C12 stehen ie Ausgangswerte stehen
    ' In Tabelle1 im Berech A6 bis J11 stehen die Werte die blinken sollen
    Sub Start()
    DaEt = Now + DaZeit                             ' neue Startzeit setzen
    Application.OnTime DaEt, "Prozedur"          ' Prozedur zur Startzeit starten
    End Sub
    Sub Prozedur()
    ' Deine Prozedur
    Start
    End Sub
    
    Gruß Hajo

    Anzeige
    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 10:46:53
    Daniel
    Hi
    nein.
    Irgendwo musst du dir ja merken, wann der code zum letzten mal gelaufen ist, um beim Start zu überprüfen, ob seit dem letzten Lauf eine Woche vorbei ist oder nicht.
    Wenn dich stört, dass das diese Information sichtbar in einem Tabellenblatt steht, hast du noch folgende Möglichkeiten, diesen Namen abzulegen:
    a) in einem Namen
    b) als Text in einer BuiltInDocumentproperty
    c) in einer benutzerdefinierten Documentproperty
    aber ich finde, die Zelle als Speicherort ist das Einfachste.
    zwei kleine Tipps noch am Rande:
    - ab Excel 2010 beherrst die Excelfunktion "Kalenderwoche" die deutschen Regelen zur Bildung der Kalerndrewoche, dh eine UDF ist hierfür nicht mehr erforderlich (der zweite Parameter ist 21)
    - Lege in der Zelle (oder sonstwo) nicht nur die KW, sondern auch das Jahr dazu mit ab, dh heute den Wert: 201505
    Dann funtkioniert dein Code auch über den Jahreswechsel.
    Gruß Daniel

    Anzeige
    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 10:50:24
    Vulferin
    Ich ebkomme das leider aber so nicht ans laufen
    ;(
    Ich hab die Funktion auch mit in Arbeitbaltt und Privat gepackt

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 10:54:51
    Vulferin
    Ich ebkomme das leider aber so nicht ans laufen
    ;(
    Ich hab die Funktion auch mit in Arbeitbaltt und Privat gepackt

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 11:12:26
    Vulferin
    Ok. das ganze ist doch sehr schwierig
    ICh hab kein Problem wenn ich ZZ2 nehme. das ist weit aus meinen Bereich raus.
    Aber ich bekomme es nicht ans laufen damit :(

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 11:20:02
    Vulferin
    Geht habs
    COOOL

    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 11:20:13
    ede
    Hallo,
    dann stell eine Beispielmappe ab, sonst kan dir keiner helfen, den Inhalt kannst du ja entfernen!
    ede

    Anzeige
    AW: Macro nur 1 mal die Woche ausführen
    29.01.2015 11:26:35
    Daniel
    Hi
    was genau willst du mir sagen?
    du redest sehr kryptisch
    probiere mal folgenden Code im Modul "DieseArbeitsmappe"
    die Kalenderwoche des Letzen Laufes wird in einem Namen gespeichert und ist somit im Blatt nicht sichtbar.
    Private Sub Workbook_Open()
    Dim AktKW As String
    Dim LeKW As String
    AktKW = "=" & Year(Date) & Format(WorksheetFunction.WeekNum(Date, 21), "00")
    On Error Resume Next
    LeKW = Me.Names("LetzterMakroLauf").Value
    On Error GoTo 0
    If LeKW = "" Or LeKW 
    Gruß Daniel

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige