Anzeige
Archiv - Navigation
1628to1632
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

VBA: 3 Tabellen, wenn Datum heute Jahr um 1 erhöhe

VBA: 3 Tabellen, wenn Datum heute Jahr um 1 erhöhe
26.06.2018 09:12:27
Bernd
Hallo zusammen,
Komme leider bei einem Problem nicht weiter und bräuchte mal Hilfe.
Beim Öffnen der Datei 3 Tabellen überprüfen, ob in einer Spalte das Datum heute oder kleiner als heute, dann das Datum um ein Jahr erhöhen.
Dateiname: BKK
Folgende Tabelle sollen überprüft werden:
Tabelle1 Spalte L oder 12
Tabelle2 Spalte I oder 9
Tabelle3 Spalte Q oder 17
Für Eure Hilfe schon mal ein Danke im Voraus!!!
Userbild
Office Version 2016 Pro 32bit - Windows10 Pro 64 bit
"Wenn du jemanden ohne Lächeln triffst, schenke ihm dein's!"

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: 3 Tabellen, wenn Datum heute Jahr um 1 erhöhe
26.06.2018 09:35:39
UweD
Hallo Bernd
so?
gehört in DieseArbeitsmappe
Microsoft Excel Objekt DieseArbeitsmappe
Option Explicit 
 
Private Sub Workbook_Open() 
    Dim wb, TB, Sp As Integer, Zelle 
    Set wb = ThisWorkbook 
     
    'Durchlaufe alle Blätter 
    For Each TB In wb.Sheets 
         
        'entscheide ja nach Blattname welche Spalte verwendet werden soll 
        Select Case TB.Name 
            Case "Tabelle1" 
                Sp = 12 
            Case "Tabelle2" 
                Sp = 9 
            Case "Tabelle3" 
                Sp = 17 
        End Select 
         
        'sind überhaupt Zellen mit Zahlen enthalten 
        'Ein Datum ist auch eine Zahl 
        If WorksheetFunction.Count(TB.Columns(Sp)) > 0 Then 
             
            'Für jede Zelle mit einer Zahl 
            For Each Zelle In TB.Columns(Sp).SpecialCells(xlCellTypeConstants, 1) 
                 
                'Ist die Zahl ein Datum 
                If IsDate(Zelle) Then 
                     
                    'ist das Datum kleiner gleich heute 
                    If Zelle <= Date Then 
                         
                        'Jahr um eins erhöhen 
                        Zelle.Value = DateSerial(Year(Zelle) + 1, Month(Zelle), Day(Zelle)) 
                    End If 
                End If 
            Next 
        End If 
    Next 
End Sub 

LG UweD
Anzeige
AW: VBA: 3 Tabellen, wenn Datum heute Jahr um 1 erhöhe
26.06.2018 09:58:19
Bernd
Hallo Uwe, hallo Chris,
Danke für Eure schnelle Hilfe. Beide Versionen funktionieren! Für Welche ich mich entschieden habe, lasse ich offen.
Userbild
Office Version 2016 Pro 32bit - Windows10 Pro 64 bit
"Wenn du jemanden ohne Lächeln triffst, schenke ihm dein's!"
Danke (mit weiterem Text)
26.06.2018 11:57:32
UweD
Sind ja im Kern identisch
Bei wird vorher noch einiges an möglichen Fehlern abgefragt.
LG UweD
AW: VBA: 3 Tabellen, wenn Datum heute Jahr um 1 erhöhe
26.06.2018 09:36:01
ChrisL
Hi Bernd
Private Sub Workbook_Open()
Call EditDate("Tabelle1", 12)
Call EditDate("Tabelle2", 9)
Call EditDate("Tabelle3", 17)
End Sub

Private Sub EditDate(strTB As String, intSpalte As Integer)
Dim c As Range
Application.ScreenUpdating = False
With Worksheets(strTB)
For Each c In .Columns(intSpalte).SpecialCells(xlCellTypeConstants)
If c 
cu
Chris
Anzeige

322 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige