Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1656to1660
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

Codeprobleme bei Personalmakro

Codeprobleme bei Personalmakro
13.11.2018 08:25:44
Andreas
Hallo liebe Forumer,
leider habe ich wieder ein Problem was ich nicht lösen kann, da ich es nicht verstehe. Vielleicht könnt ihr mir wieder mal helfen.
Problem:
Mit unten stehendem Makro lese ich aus einem String (z.B. "Januar 2018 bis Oktober 2018") den letzten Monat + Jahreszahl aus. Diese wird in Tabelle1 in Zelle A1 kopiert. Das funktioniert alles im Makro innerhalb der Arbeitsmappe. Jedoch habe ich das Makro jetzt in der Personal.xlsb gespeichert und hier funktioniert es nicht.
Der String wird richtig ausgelesen. Er wird aber nicht in Tabelle1 sichtbar eingefügt. Woran könnte das liegen? Es laufen noch andere Makros, die ohne Probleme.
Sub Monat_einfuegen()
Dim MySplit, x&, strg$
Worksheets("Auswertung Kostenstellen").Activate
MySplit = Split(Cells(2, 1), " ")
For x = 0 To UBound(MySplit)
If x > 2 Then strg = strg & " " & MySplit(x)
Next
'MsgBox strg
Worksheets("Tabelle1").Activate
Debug.Print Trim(strg)
With Tabelle1.Cells(1, 1)
.NumberFormat = "@"
.Value = Trim(strg)
End With
End Sub

Danke euch vorab.
Gruß
Andreas

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Codeprobleme bei Personalmakro
13.11.2018 09:29:26
Luschi
Hallo Andreas,
Worksheets("Tabelle1") bezieht sich auf die aktive Arbeitsmappe (bei mir: TestMappe2.xlsx)
Tabelle1 bezieht sich aber auf die persönliche Arbeitsmappe
Testen kannst Du es mit
? Tabelle1.Cells(1, 1).Parent.Parent.Name ' PERSONAL.XLSB
? Worksheets("Tabelle1").Cells(1, 1).Parent.Parent.Name 'TestMappe2.xlsx
Gruß von Luschi
aus klein-Paris
AW: Codeprobleme bei Personalmakro
13.11.2018 09:47:15
Andreas
Hallo Luschi,
danke für die Info.
Wo füge ich deinen Code genau ein?
Das kopieren soll in der aktiven Arbeitsmappe "laufen", ausgelöst durch das Personal.xlsb
Danke nochmal.
Gruß
Andreas
Anzeige
AW: Codeprobleme bei Personalmakro
13.11.2018 09:55:39
Luschi
Hallo Andreas,
Worksheets("Tabelle1").Activate
With Worksheets("Tabelle1") ' statt Tabelle1.Cells(1, 1)
Gruß von Luschi
aus klein-Paris
AW: Codeprobleme bei Personalmakro
13.11.2018 10:09:20
Andreas
Hallo Luschi,
danke. Habe es jetzt so eingefügt.
Nun bekomme ich die Fehlermeldung bei NumberFormat & Value
Worksheets("Tabelle1").Activate
Debug.Print Trim(strg)
With Worksheets("Tabelle1").Cells(1, 1).Parent.Parent.Name
.NumberFormat = "@"
.Value = Trim(strg)
End With
End Sub
Danke Andreas
AW: Codeprobleme bei Personalmakro
13.11.2018 12:37:01
Luschi
Hallo Andreas,
ich glaube, Du verwendest gerne fremden Vba-Code, den Du nicht versuchst auch zu verstehen; einfach so:
With Worksheets("Tabelle1").Cells(1, 1) ' ohne den restlichan Anhang!
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Codeprobleme bei Personalmakro
13.11.2018 12:47:01
Andreas
Hallo Luschi,
vielen Dank nochmal für deine Antwort. Ich versuche schon das zu verstehen, bin aber ein VBA Anfänger.
Unten stehender Code läuft durch. Im strg steht der korrekte String drin. Dieser wird aber nicht in Tabelle1 übertragen......Ich verstehe nicht warum?
Sub Monat_einfuegen()
Dim MySplit, x&, strg$
Worksheets("Auswertung Kostenstellen").Activate
MySplit = Split(Cells(2, 1), " ")
For x = 0 To UBound(MySplit)
If x > 2 Then strg = strg & " " & MySplit(x)
Next
'Worksheets("Tabelle1").Activate
'Tabelle1.Cells(1, 1).Value = "'" & Trim(strg)
'MsgBox strg
Worksheets("Tabelle1").Activate
Debug.Print Trim(strg)
With Worksheets("Tabelle1").Cells(1, 1).Parent.Parent.Name
'.NumberFormat = "@"
'.Value = Trim(strg)
End With
MsgBox Worksheets("Tabelle1").Cells(1, 1)
End Sub
Danke
Andreas
Anzeige
AW: Codeprobleme bei Personalmakro
13.11.2018 12:57:05
Torsten
Manchmal muss man auch die Antworten richtig lesen:
With Worksheets("Tabelle1").Cells(1, 1) ' ohne den restlichan Anhang!
Du hast dieses

.Parent.Parent.Name
wieder angehaengt.
Sub Monat_einfuegen()
Dim MySplit, x&, strg$
Worksheets("Auswertung Kostenstellen").Activate
MySplit = Split(Cells(2, 1), " ")
For x = 0 To UBound(MySplit)
If x > 2 Then strg = strg & " " & MySplit(x)
Next
Worksheets("Tabelle1").Activate
Tabelle1.Cells(1, 1).Value = "'" & Trim(strg)
MsgBox strg
Worksheets("Tabelle1").Activate
Debug.Print Trim(strg)
With Worksheets("Tabelle1").Cells(1, 1)
.NumberFormat = "@"
.Value = Trim(strg)
End With
MsgBox Worksheets("Tabelle1").Cells(1, 1)
End Sub
Gruss Torsten
Anzeige
Korrektur
13.11.2018 13:02:38
Torsten
Code laeuft so bei mir:
Sub Monat_einfuegen()
Dim MySplit, x&, strg$
Worksheets("Auswertung Kostenstellen").Activate
MySplit = Split(Cells(2, 1), " ")
For x = 0 To UBound(MySplit)
If x > 2 Then strg = strg & " " & MySplit(x)
Next
Worksheets("Tabelle1").Activate
Worksheets("Tabelle1").Cells(1, 1).Value = "'" & Trim(strg)
MsgBox strg
Worksheets("Tabelle1").Activate
Debug.Print Trim(strg)
With Worksheets("Tabelle1").Cells(1, 1)
.NumberFormat = "@"
.Value = Trim(strg)
End With
MsgBox Worksheets("Tabelle1").Cells(1, 1)
End Sub

Anzeige
AW: Korrektur
13.11.2018 14:18:37
Andreas
Hallo Thorsten,
perfekt!!!!!!
Danke für deine Hilfe.
Es läuft.
Gruß
Andreas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige