Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Wert einer Zelle in die nächste übertragen

Forumthread: Wert einer Zelle in die nächste übertragen

Wert einer Zelle in die nächste übertragen
29.07.2005 12:35:29
Paulo
Hallo,
ich habe eine Excel-Tabelle, in der in jeder Zelle Werte mit 10 Zeichen stehen. Nun möchte ich zwischen jede Zeile, in der Werte stehen eine Leerzeile einfügen, den Wert der vorhergehen Zelle ab der 5. Stelle einfügen und in der Originalzelle den Originalwerte minus der letzten 5 Zeichen einfügen. Anbei ein Beispiel:
Original:
hallo12345 hallo12346 hallo12347
ciaoi67890 ciaoi67891 ciaoi67892
grüzi54321 grüzi54322 grüzi54323
Leerzeile:
hallo12345 hallo12346 hallo12347

ciaoi67890 ciaoi67891 ciaoi67892

grüzi54321 grüzi54322 grüzi54323
"gekappte" Zellen:
hallo hallo hallo
12345 12346 12347
ciaoi ciaoi ciaoi
67890 67891 67892
grüzi grüzi grüzi
54321 54322 54323
Ich habe hierfür ein Makro geschrieben:

Sub Leerzeilen()
Set wksTemp = ActiveSheet
Menge = wksTemp.UsedRange.Rows.Count
For i = Menge To 2 Step -1
Menge1 = i & ":" & i
Rows(Menge1).Select
Selection.Insert Shift:=xlDown
Next
ueber5
End Sub


Sub ueber5()
Dim o
Dim p
Dim Nome
Dim q
Dim r
Dim s
Dim t
Application.ScreenUpdating = False
Nome = ThisWorkbook.Name
Set t = ActiveSheet.UsedRange
p = t.Rows.Count
s = t.Columns.Count
Workbooks(Nome).Worksheets("tabelle1").Range("A1").Select
For r = 1 To s
For q = 1 To p
o = Selection.Value
o = Right(o, 5)
ActiveCell.Offset(1, 0).Value = o
Workbooks(Nome).Worksheets("tabelle1").Cells(q, r).Select
Next q
Next r
o = Selection.Value
o = Left(o, 5)
ActiveCell.Offset(1, 0).Value = o
Range("A1").Select
Application.ScreenUpdating = True
End Sub


Sub weniger5()
Dim a
Dim e
Dim Nomen
Dim b
Dim j
Dim k
Dim m
Application.ScreenUpdating = False
Nomen = ThisWorkbook.Name
Set m = ActiveSheet.UsedRange
e = m.Rows.Count
k = m.Columns.Count
Workbooks(Nomen).Worksheets("tabelle1").Range("A1").Select
For j = 1 To k
For b = 1 To e
a = Selection.Value
a = Left(a, 5)
ActiveCell.Value = a
Workbooks(Nomen).Worksheets("tabelle1").Cells(b, j).Select
Next b
Next j
a = Selection.Value
a = Left(a, 5)
ActiveCell.Value = a
Range("A1").Select
Application.ScreenUpdating = True
End Sub

Leider klappt das nicht. Könnte Ihr mir evtl. weiterhelfen?
Gruß
Paulo
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Wert einer Zelle in die nächste übertragen
29.07.2005 21:12:23
Peter
Hallo Paulo,
was hälst du von meiner Lösung?
https://www.herber.de/bbs/user/25135.xls
Viele Grüße Peter
Das Forum lebt auch von den Rückmeldungen.
AW: Wert einer Zelle in die nächste übertragen
30.07.2005 07:10:20
Erich
Hallo Paulo,
oder so?

Sub Zellen_teilen()
Dim mm As Long, rr As Long, cc As Integer
mm = IIf([A65536] > "", 65536, [A65536].End(xlUp).Row)
If 2 * mm > 65536 Then MsgBox "Zu viele Zeilen - Abbruch", 16: Exit Sub
For rr = mm To 1 Step -1
Rows(rr + 1).Insert
For cc = 1 To Cells(rr, Columns.Count).End(xlToLeft).Column
Cells(rr + 1, cc) = Right(Cells(rr, cc), 5)
Cells(rr, cc) = Left(Cells(rr, cc), 5)
Next cc
Next rr
End Sub

Grüße aus Kamp-Lintfort
Erich
Anzeige
AW: Wert einer Zelle in die nächste übertragen
02.08.2005 09:38:21
Paulo
Hallo Peter, hallo Erich,
vielen Dank für Eure Hilfe. Mein Makro sieht so kompliziert aus und Eure sehen so einfach und schlicht aus. Ich glaube, ich muss noch vieles lernen. Beide Makros klappen hervorragend. Es ist genau das, was ich gesucht habe. Vielen Dank nochmal und noch einen schönen Tag.
Grüße
Paulo
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
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