Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
464to468
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
464to468
464to468
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilen mit Button kopieren

Zeilen mit Button kopieren
03.08.2004 15:25:22
Raphael
Hallo Forum,
folgendes Problem:
Ein Block mit 5 Zeilen mit 6 Spalten soll auf Knopfdruck immer unterhalb des jeweils letzten vorhandenen geschrieben werden und nicht immer an der gleichen Stelle. (Das habe ich mit dem Macrorecorder hinbekommen.) Also zu Anfang steht immer nur ein Block zu 5x6 Zellen. Drückt man einen Knopf soll dieser Block kopiert und unterhalb dieses Blockes eingefügt werden. Zusätzlich soll in Zelle 1/1 (in jedem dieser "Blöcke") eine fortlaufende Zahl erscheinen. Beim ersten kopierten eine 2 etc.
Wie geht das?
Viele Grüße,
Raphael

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen mit Button kopieren
ChrisL
Hi Raphael

Sub BlockKopieren()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim LetzteZeile As Long
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
LetzteZeile = WS2.Range("A65536").End(xlUp).Row + 5
If WS2.Range("A1") = "" Then
WS1.Range("A1:F5").Copy WS2.Range("B1")
WS2.Range("A1") = 1
Else
WS1.Range("A1:F5").Copy WS2.Cells(LetzteZeile, 2)
WS2.Cells(LetzteZeile, 1) = WS2.Cells(LetzteZeile - 5, 1) + 1
End If
End Sub

Gruss
Chris
AW: Zeilen mit Button kopieren
04.08.2004 12:21:15
Raphael
Hallo Chris,
vielen lieben Dank zunächst mal! Das Ding funktioniert! Wie ist es wenn ich verbundene Zellen habe? Da habe ich dann eine Fehlermeldung :-(
Hast du da auch ein Mittelchen?
Viele Grüße,
Raphael
Anzeige
AW: Zeilen mit Button kopieren
ChrisL
Hi Raphael
Sagen wir A1:B1 ist verbunden, dann kannst du den Bereich natürlich kopieren. Ist aber A1:B1 verbunden und du willst nur A1 kopieren geht es nicht.
Gruss
Chris
AW: Zeilen mit Button kopieren
04.08.2004 17:25:02
Raphael
Hallo Chris,
ich habe z.B. C1:D1, E1:f1 und G1:X1 verbunden.
Mit dem Objekt "myMultiAreaRange" habe ich nun diese Bereiche definiert.
Und trotzdem ist da wieder irgendein Haken und ich dreh mich im Kreis. Das ist leider zu hoch für mich.
Hier ist mal mein Code. Habe jetzt 2,5 Stunden daran probiert, aber ich bin wirklich blutiger Anfänger...
Dim WS1 As Worksheet, WS2 As Worksheet
Dim LetzteZeile As Long
Set WS1 = Worksheets("tabelle2")
'Set WS2 = Worksheets("Tabelle2")
LetzteZeile = WS1.Range("A65536").End(xlUp).Row + 1
'If WS2.Range("A1") = "" Then
' WS1.Range("A1:F5").Copy WS2.Range("B1")
' WS1.Range("C32") = 1
'Else
'WS1.Rows(28).Copy WS1.Rows(LetzteZeile)
' WS1.Cells(LetzteZeile, 1) = WS1.Cells(LetzteZeile, 1) + 1

'End If
Dim r1 As Range, r2 As Range, r3 As Range, r4 As Range
Dim r5 As Range, r6 As Range, myMultiAreaRange31 As Range
Worksheets("tabelle2").Activate
Set r1 = Range("C32:D32")
Set r2 = Range("E32:F32")
Set r3 = Range("G32:G32")
Set r4 = Range("H32:O32")
Set r5 = Range("P32:T32")
Set r6 = Range("U32:U32")
If WS1.Range("C32") = "1" Then
Set myMultiAreaRange31 = Union(r1, r2, r3, r4, r5, r6)
WS1.Select
myMultiAreaRange31.Copy WS1.Cells(LetzteZeile, 3)
'Application.CutCopyMode = False
WS1.Cells(LetzteZeile, 3) = WS1.Cells(LetzteZeile - 1, 3) + 1
'Rows(31).Select
'myMultiAreaRange31.Insert (xlShiftDown)
End If
Könntest du noch mal schauen, bitte?
Viele Grüße,
Raphael
Anzeige
AW: Zeilen mit Button kopieren
ChrisL
Hi Raphael
Wieso...
Set r1 = Range("C32:D32")
Set r2 = Range("E32:F32")
Set r3 = Range("G32:G32")
Set r4 = Range("H32:O32")
Set r5 = Range("P32:T32")
Set r6 = Range("U32:U32")
... und nicht ...
Range("C32:U32")
?
Gruss
Chris
AW: Zeilen mit Button kopieren
05.08.2004 09:52:55
Raphael
Guten Morgen Chris,
die Zeile gehört zu einem Formular, was ich erstellen möchte und über den zusammengefügten Zellen stehen Überschriften. Die Eingaben dürfen die vorgegebene Breite der zusammengefügten Zellen nicht überschreiten.
Herzliche Grüße,
Raphael
AW: Zeilen mit Button kopieren
ChrisL
Hi Raphael
Vielleicht musst du halt mal ein Beispiel hochladen. Tatsache ist, dass du verbundene Zellen ganz kopieren musst. Versuch es mal manuell, dann verstehst du vielleicht was ich meine... es funktioniert nämlich auch manuell nicht.
Gruss
Chris
Anzeige
AW: Zeilen mit Button kopieren
05.08.2004 11:19:30
Raphael
Hallo Chris,
hier ein neues Ergebnis:
die Zeile 32 wird kopiert und die verbundenen Zelle werden tatsächlich übernommen.
Nun funktioniert aber das Hochzählen der Spalten nicht mehr. Wie kann ich denn Variablen in Zellen speichern und wieder abrufen? Wenn also eine Counter-Zahl immer um "1" erhöht wird und das aktuelle Ergebnis in Zelle A30 gespeichert werden soll?
Hier mein aktueller Code:

Sub dupl3()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim LetzteZeile As Long, weiter As Long
Dim r1 As Range, r2 As Range, r3 As Range, r4 As Range
Dim r5 As Range, r6 As Range, myMultiAreaRange As Range
Set WS1 = Worksheets("tabelle2")
LetzteZeile = WS1.Range("A65536").End(xlUp).Row + 32
Worksheets("tabelle2").Activate
Set r1 = Range("C32:D32")
Set r2 = Range("E32:G32")
Set r3 = Range("H32:O32")
Set r4 = Range("P32:Y32")
Set myMultiAreaRange = Union(r1, r2, r3, r4)
WS1.Cells(LetzteZeile, 3).Select
Selection.EntireRow.Insert (xlShiftDown)
myMultiAreaRange.Copy WS1.Cells(LetzteZeile, 3)
WS1.Cells(LetzteZeile, 3) = WS1.Cells(LetzteZeile - 1, 3) + 1
'myMultiAreaRange31.Insert (xlShiftDown)
End Sub

Es tut mir wirklich leid, dass ich so sprunghafte Anforderungen habe!! Aber wenn man sich länger mit einem Thema beschäftigt, kommen einem immer neue Ideen..
Sorry ;-)
Viele Grüße,
Raphael
Anzeige
AW: Zeilen mit Button kopieren
ChrisL
Hi Raphael

Sub dupl3()
Dim LetzteZeile As Long
Dim r1 As Range, r2 As Range, r3 As Range, r4 As Range
Dim r5 As Range, r6 As Range, myMultiAreaRange As Range
With Worksheets("Tabelle2")
LetzteZeile = .Range("C65536").End(xlUp).Row + 32
Set r1 = .Range("C32:D32")
Set r2 = .Range("E32:G32")
Set r3 = .Range("H32:O32")
Set r4 = .Range("P32:Y32")
Set myMultiAreaRange = Union(r1, r2, r3, r4)
.Cells(LetzteZeile, 3).EntireRow.Insert (xlShiftDown)
myMultiAreaRange.Copy .Cells(LetzteZeile, 3)
.Range("A30") = .Range("A30") + 1
.Cells(LetzteZeile, 3) = .Range("A30")
End With
End Sub

Gruss
Chris
Anzeige
AW: Zeilen mit Button kopieren
05.08.2004 12:54:40
Raphael
Hey Chris,
vielen vielen Dank! Es funktioniert genau so, wie es soll!! Genial!
Noch eine kleine Frage: Wie könnte man die "32" bei SET r1=RANGE("C32:D32") durch eine Variable ersetzen?
ALSO SET r1=RANGE("C" Variable :"D" Variable) ?
Sieht wieder einmal fantasievoll aus (und mehr wahrscheinlich auch nicht).
Ich habe schon in der Hilfe geschaut und (für mich) keine konkrete Antwort erhalten.
Ganz ganz herzlichen Dank,
Raphael
AW: Zeilen mit Button kopieren
06.08.2004 15:33:57
Raphael
Problem gelöst.
Ganz herzlichen Dank!
Raphael

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige