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

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

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

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige