Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

makro umschreiben

Forumthread: makro umschreiben

makro umschreiben
22.01.2009 09:53:00
haris
Hallo Experten,
ich haben folgendes Makro:

Sub pn_1_7_1()
Dim i As Long, ar As Variant, j As Integer
For i = 1 To Cells(1, 1).End(xlDown).Row
If Cells(i, 1).Value Like "#-#######-#" Then
ar = Split(Cells(i, 1).Value, "-")
j = 1
While Mid(ar(1), j, 1) = "0"
j = j + 1
Wend
If j > 1 Then ar(1) = Mid(ar(1), j)
End If
If ar(0) = "0" Then
Cells(i, 2).Value = ar(1) & IIf(ar(2) = "0", "", "-" & ar(2))
Else
Cells(i, 2).Value = Join(ar, "-")
End If
Next
End Sub


diese Makro würde ich gerne so umschreiben, das der Ausgangswert in "G13" steht und das Ergeniss in "H13" herauskommt. was müsste ich hier ändern?
Grüße
Harris

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: makro umschreiben
22.01.2009 10:00:00
yusuf
Hi,
eventuell so!?
Ungetestet:

Sub pn_1_7_1()
Dim i As Long, ar As Variant, j As Integer
For i = 1 To Cells(1, 1).End(xlDown).Row
If Cells(i, 1).Value Like "#-#######-#" Then
ar = Split(Cells(i, 1).Value, "-")
Range("G13") = Split(Cells(i, 1).Value, "-")
j = 1
While Mid(ar(1), j, 1) = "0"
j = j + 1
Wend
If j > 1 Then ar(1) = Mid(ar(1), j)
End If
If ar(0) = "0" Then
Cells(i, 2).Value = ar(1) & IIf(ar(2) = "0", "", "-" & ar(2))
Range("H13") = ar(1) & IIf(ar(2) = "0", "", "-" & ar(2))
Else
Cells(i, 2).Value = Join(ar, "-")
Range("H13") = Join(ar, "-")
End If
Next
End Sub


Gruß
Yusuf

Anzeige
AW: makro umschreiben
22.01.2009 10:09:43
haris
Hallo Yusuf,
ich bekomm hier --> If ar(0) = "0" Then
AW: makro umschreiben
26.01.2009 08:32:00
yusuf
Hallo,
ich bitte um Entschuldigung, dass ich mich jetzt erst melde.
Lief das Makro denn vor meiner Erweiterung?
Die Erweiterungen, die ich eingefuegt habe, sollten so einen Fehler nicht ausloesen.
Im folgenden habe ich die Stellen, welche ich eingefuegt habe fett hervorgehoben.
Meine VBA-Kenntnisse sind nicht so gut, dass ich den eigentlichen Fehler finden kann.
Ich lasse die Frage offen, eventuell hat ja jemand anderes einen Lösungsvorschlag.

Sub pn_1_7_1()
Dim i As Long, ar As Variant, j As Integer
For i = 1 To Cells(1, 1).End(xlDown).Row
If Cells(i, 1).Value Like "#-#######-#" Then
ar = Split(Cells(i, 1).Value, "-")
Range("G13") = Split(Cells(i, 1).Value, "-")
j = 1
While Mid(ar(1), j, 1) = "0"
j = j + 1
Wend
If j > 1 Then ar(1) = Mid(ar(1), j)
End If
If ar(0) = "0" Then
Cells(i, 2).Value = ar(1) & IIf(ar(2) = "0", "", "-" & ar(2))
Range("H13").Value = ar(1) & IIf(ar(2) = "0", "", "-" & ar(2))
Else
Cells(i, 2).Value = Join(ar, "-")
Range("H13") = Join(ar, "-")
End If
Next
End Sub


Gruß
Yusuf

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige