Anzeige
Archiv - Navigation
1356to1360
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 Fehler in einer Codezeile

VBA Fehler in einer Codezeile
05.04.2014 08:54:10
WalterK
Guten Morgen,
ich scheitere mit meinen bescheidenen VBA-Kenntnissen wieder einmal an einer Codezeile. Mit LngIndex sollen die Blätter 1 bis 12 durchlaufen und Formeln eingetragen werden. In A5 sollte jeweils die Formel "=Datum(2014;monat(und hier sollte der Name des aktuellen Blattes rein);1)" stehen. Bei der Zeile .Range("A5").FormulaLocal.... wird als der Fehler angezeigt. Der Fehler lautet: "Fehler beim Kompilieren: Ungültiger Bezeichner".
Option Explicit
Sub DatenEintragen()
Dim LngIndex As Long
Dim wks As Worksheet
With ThisWorkbook
For LngIndex = .Sheets("1").Index To .Sheets("12").Index
With .Sheets(LngIndex)
.Range("A5").FormulaLocal = "=Datum(2014;Monat(" & LngIndex.Value & ";1)"
.Range("A6:A35").FormulaLocal = "=WENN(A5="""";"""";WENN(A5+1>=DATUM(JAHR(A5); _
MONAT(A5)+1;1);"""";A5+1))"
.Range("B5:B35").FormulaLocal = "=WENN(A5="""";"""";A5)"
.Range("A5:B35").Formula = .Range("A5:B35").Value
.Range("A5:A35").NumberFormat = "m/d/yyyy"
.Range("B5:B35").NumberFormat = "ddd"
.Range("A5:B35").HorizontalAlignment = xlCenter
.Range("A5:B35").VerticalAlignment = xlCenter
End With
Next
End With
End Sub
Besten Dank für die Hilfe und Servus, Walter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Fehler in einer Codezeile
05.04.2014 09:04:34
Crazy
Hallo Walter
was passiert denn wenn du in der Zeile
bei LngIndex das ".Value" weglässt?
MfG Tom

AW: VBA Fehler in einer Codezeile
05.04.2014 09:57:49
WalterK
Hallo Tom,
bei LngIndex kommt der Fehler: Laufzeitfehler 1004: Anwendungs- oder objektdefinierter Fehler und
bei .LngIndex kommt der Fehler: Laufzeitfehler 438: Objekt unterstützt diese Eigenschaft oder Methode nicht.
Danke fürs Helfen und Servus, Walter

AW: VBA Fehler in einer Codezeile
05.04.2014 10:09:29
Crazy
Hallo Walter
so klappt es bei mir
 Sub DatenEintragen()
Dim LngIndex As Long
Dim wks As Worksheet
With ThisWorkbook
For LngIndex = .Sheets(1).Index To .Sheets(12).Index
With .Sheets(LngIndex)
.Range("A5").FormulaLocal = "=Datum(2014;Monat(" & LngIndex & ");1)"
.Range("A6:A35").FormulaLocal = "=WENN(A5="""";"""";WENN(A5+1>=DATUM(JAHR(A5); _
MONAT(A5)+1;1);"""";A5+1))"
.Range("B5:B35").FormulaLocal = "=WENN(A5="""";"""";A5)"
.Range("A5:B35").Formula = .Range("A5:B35").Value
.Range("A5:A35").NumberFormat = "m/d/yyyy"
.Range("B5:B35").NumberFormat = "ddd"
.Range("A5:B35").HorizontalAlignment = xlCenter
.Range("A5:B35").VerticalAlignment = xlCenter
End With
Next
End With
End Sub
MfG Tom

Anzeige
AW: VBA Fehler in einer Codezeile
05.04.2014 10:17:22
WalterK
Hallo Tom,
der Code läuft jetzt zwar durch ohne Fehler, er übernimmt mir aber die Zahl des Blattnamens nicht in die Formel von A5.
Ich habe jetzt einmal die Datei angehängt.
https://www.herber.de/bbs/user/89999.xlsm
Servus, Walter

AW: VBA Fehler in einer Codezeile
05.04.2014 10:12:35
Gerd
Servus Walter!
.Range("A5").FormulaLocal = "=Datum(2014;" & lngIndex & ";1)"
Gruß Gerd

AW: Problem gelöst
05.04.2014 10:23:13
WalterK
Hallo Gerd,
Du hast wieder einmal den "Nagel auf den Kopf" getroffen. Jetzt läuft alles.
Ich Vollkoffer! Das hätte mir auch auffallen müssen, dass der Begriff "Monat" hier ja gar nicht gebraucht wird.
Meinen Dank an Gerd und Tom für die Hilfe, schönes Wochende. Servus, Walter
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige