Zelleninhalt umdrehen

Bild

Betrifft: Zelleninhalt umdrehen
von: Max M.
Geschrieben am: 02.11.2003 09:42:26

Hallo Excelfreunde,

habe folgendes Makro, dass aber leider nur den aktiven Zelleninhalt umdreht



Sub umdrehen()
    neu = ""
    Dim alt As String
    Dim LoI As Long
    alt = ActiveCell.Value
    For LoI = Len(alt) To 1 Step -1
        If IsNumeric(Mid(alt, LoI, 1)) = False Then
            neu = Mid(alt, LoI + 1, Len(alt) - LoI) & Mid(alt, 1, LoI)
            Exit For
        End If
    Next LoI
    ActiveCell.Value = neu
End Sub


Kann mir einer von Euch das Makro neu Schreiben, dass alle diese Zelleninhalte

For J = 1 To 10 Step 2 'Zeile 1 bis Zeile 10
For i = 1 To 11 Step 1 'Spalte 1(A) bis Spalte 11(K)

umgedreht werden???

Max M.
Bild


Betrifft: AW: Zelleninhalt umdrehen
von: Josef Ehrensberger
Geschrieben am: 02.11.2003 09:51:45

Hallo Max,

etwa so ?


Sub umdrehen()
Dim rng As Range
    Dim neu As String
    Dim alt As String
    Dim LoI As Long
    For Each rng In [A1:K10]
    alt = rng.Value
    For LoI = Len(alt) To 1 Step -1
        If IsNumeric(Mid(alt, LoI, 1)) = False Then
            neu = Mid(alt, LoI + 1, Len(alt) - LoI) & Mid(alt, 1, LoI)
            Exit For
        End If
    Next LoI
    rng = neu
    neu = vbNullString
    Next
End Sub


gruß Sepp


Bild


Betrifft: AW: Zelleninhalt umdrehen
von: Max M.
Geschrieben am: 02.11.2003 10:07:33

Hallo Josef,

vielen Dank für Deine Antwort.
Dein Makro dreht mir jetzt leider alle Zelleninhalte von A1 bis K10 um, es soll aber nur jede zweite Zeile und jede Spalte bis K umgedreht werden.

Gruß Max.


Bild


Betrifft: AW: Zelleninhalt umdrehen
von: Reinhard
Geschrieben am: 02.11.2003 10:12:46

Hi Max,
dann so.
Gruß
Reinhard


Sub umdrehen()
Dim rng As Range
    Dim neu As String
    Dim alt As String
    Dim LoI As Long
    For Each rng In [A1:K10]
    If rng.row/2 <> int(rng.row/2) 
    alt = rng.Value
    For LoI = Len(alt) To 1 Step -1
        If IsNumeric(Mid(alt, LoI, 1)) = False Then
            neu = Mid(alt, LoI + 1, Len(alt) - LoI) & Mid(alt, 1, LoI)
            Exit For
        End If
    Next LoI
    rng = neu
    neu = vbNullString
    end if
    Next
End Sub



Bild


Betrifft: AW: Zelleninhalt umdrehen
von: Reinhard
Geschrieben am: 02.11.2003 09:52:36

Hallo Max,
ungetestet.
Gruß
Reinhard

Sub umdrehen()
Dim alt As String
Dim LoI As Long
For J = 1 To 10 Step 2 'Zeile 1 bis Zeile 10
    For i = 1 To 11 Step 1 'Spalte 1(A) bis Spalte 11(K)
        neu=""
        alt = cells(j,1).Value
        For LoI = Len(alt) To 1 Step -1
            If IsNumeric(Mid(alt, LoI, 1)) = False Then
                neu = Mid(alt, LoI + 1, Len(alt) - LoI) & Mid(alt, 1, LoI)
                Exit For
            End If
        Next LoI
        cells(j,1).Value = neu
    Next i
Next j
End Sub



Bild


Betrifft: AW: Zelleninhalt umdrehen
von: Max M.
Geschrieben am: 02.11.2003 10:11:59

Hallo Reinhard,

auch Dir vielen Dank für Deine Antwort.
Dein Makro dreht mir leider nur alle Zelleninhalte von A1 bis A10 um, werde es aber noch anpassen.

Gruß Max.


Bild


Betrifft: ups, mein Fehler
von: Reinhard
Geschrieben am: 02.11.2003 10:15:31

Hallo Max,
hast Recht
nicht alt = cells(j,1).Value
sondern alt = cells(j,i).Value
sorry, aber 1 und i liegen so eng beieinander :-)
Gruß
Reinhard


Bild


Betrifft: AW: ups, mein Fehler
von: Max M.
Geschrieben am: 02.11.2003 10:18:30

Danke Reinhard, jetzt funktioniert es.
Gruß Max.


Bild


Betrifft: Danke für die Rückmeldung o.w.T.
von: Reinhard
Geschrieben am: 02.11.2003 10:31:11

.


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Sheet ohne Makro speichern."