Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1336to1340
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
zeilen: Copy and Paste mit Dialog
01.11.2013 12:33:26
Andi
Hallo,
vielleicht kann mir jemand bitte bei folgendem Problem helfen ... Tipps geben:
Ich möchte in einem Berichtsblatt vier zeilen kopieren und der User soll via Dialog entscheiden, wo diese hinkopiert werden sollen.
Das Blatt hat viele aufeinanderfolgende Bereichtszeilen (immer 4 zusammen), die sehr umfangreich sind, versch. Matrixformeln enthalten und auch gruppierte Zellen. Kopiert werden müssen also Inhalte, Formate, Formeln usw ...
Ich bekomme es nicht hin, dass der Inhalt der Variablen an diese Stelle geschrieben wird?
Der Code:
  • 
    Sub Copy_and_Paste()
    ' kopiert die ersten 4 Berichtszeilen
    Dim rngCopy As Variant
    Range("A10:KG13").Select
    rngCopy = Selection
    ' Benutzdialog für Zielbereich
    Dim rngZiel As Range
    Set rngZiel = Application.InputBox _
    (prompt:="Markiere den Zielbereich", Type:=8)
    rngZiel.Select
    'Kopierte Zeilen einfügen
    rngCopy.Insert Shift:=xlDown ' Problem?!?!
    Application.CutCopyMode = False
    End Sub
    

  • 8
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: zeilen: Copy and Paste mit Dialog
    01.11.2013 12:46:40
    Andi
    Nachtrag:
    Mit dem MakroRec. funktioniert es und sieht folgendermaßen aus... Es fehlt nur der Dialog, um die Zieladresse bestimmen zu lassen:
  • 
    Sub Makro1()
    Rows("10:13").Select
    Range("B10").Activate
    Selection.Copy
    Rows("30:30").Select
    Range("B30").Activate
    Selection.Insert Shift:=xlDown
    Application.CutCopyMode = False
    End Sub
    

  • AW: zeilen: Copy and Paste mit Dialog
    01.11.2013 14:32:35
    fcs
    Hallo Andi,
    zum Kopieren muss das Makro etwa wie folgt aussehen.
    Dabei kann man die Einfügezeile auch vor dem Makrostart auswählen und muss nur per OK das Einfügen bestätigen.
    mfg
    Franz
    Sub Copy_and_Paste()
    ' kopiert die ersten 4 Berichtszeilen
    Dim rngZiel As Range, rngCopy As Range
    On Error GoTo Beenden 'wenn Auswahl abgebrochen wird
    Set rngCopy = Range("A10:KG13")
    ' Benutzdialog für Zielbereich
    Set rngZiel = Application.InputBox _
    (prompt:="Markiere den Zielbereich (Zelle oberhalb der eingefügt werden soll)", _
    Default:=ActiveCell.Address, _
    Title:="Bereich " & rngCopy.Address & " kopieren und einfügen", Type:=8)
    rngZiel.Select
    'Zeilen kopieren und einfügen
    rngCopy.Copy
    ActiveSheet.Cells(rngZiel.Row, rngCopy.Column).Insert Shift:=xlDown
    Application.CutCopyMode = False
    Beenden:
    End Sub
    

    Anzeige
    AW: zeilen: Copy and Paste mit Dialog
    04.11.2013 08:29:47
    Andi
    Hallo Franz,
    Super!
    Danke für die Lösung.
    Genau so - sollte es sein!
    Gruß zurück
    Andi

    AW: zeilen: Copy and Paste mit Dialog
    04.11.2013 08:29:59
    Andi
    Hallo Franz,
    Super!
    Danke für die Lösung.
    Genau so - sollte es sein!
    Gruß zurück
    Andi

    AW: zeilen: Copy and Paste mit Dialog
    05.11.2013 12:52:08
    Andi
    Nochmal Hallo,
    kann man dafür Sorge tragen, dass die Variable "rngZiel" aus einem bestimmten Bereich in Spalte A kommt?
    Sie darf nur folgenden Inhalt haben:
    von A14 ... A18 ... A22 (also jeweils +4) bis A66
    Muss auch das mit einer Schleife belegt werden?
    DANKE ....

    AW: zeilen: Copy and Paste mit Dialog
    05.11.2013 14:52:49
    fcs
    Hallo Andi,
    hier dein Makro mit Prüfung der selektierten Zeile.
    Für den Defaultwert wird im Dialogfenster wird jetzt die nächstgelegene korrekte Zelle in Spalte A angezeigt.
    mfg
    Franz
    Sub Copy_and_Paste()
    ' kopiert die ersten 4 Berichtszeilen
    Dim rngZiel As Range, rngCopy As Range, strMsgTxt As String
    On Error GoTo Beenden 'wenn Auswahl abgebrochen wird
    Set rngCopy = Range("A10:KG13")
    ' Benutzdialog für Zielbereich
    Zellauswahl:
    Set rngZiel = Cells(ActiveCell.Row, 1)
    'ggf. korrekte Zielzelle ober-/unterhalb der aktiven/selektierten Zelle als _
    Defaultwert für Auswahldialog ermitteln
    Select Case rngZiel.Row
    Case Is  66
    Set rngZiel = Range("A66")
    Case Else
    Select Case (rngZiel.Row - 13) Mod 4
    Case 1 'korrekte Zeile vorgewählt
    Case 0: Set rngZiel = rngZiel.Offset(1, 0)
    Case 2: Set rngZiel = rngZiel.Offset(-1, 0)
    Case 3: Set rngZiel = rngZiel.Offset(2, 0)
    End Select
    End Select
    'Auswahldialog anzeigen
    Set rngZiel = Application.InputBox _
    (prompt:=strMsgTxt & "Markiere den Zielbereich (Zelle A14, A18, A22, ... , " _
    & "A62, A66) oberhalb dem eingefügt werden soll", _
    Default:=rngZiel.Address, _
    Title:="Bereich " & rngCopy.Address & " kopieren und einfügen", Type:=8)
    rngZiel.Select
    'Zeile der selektierten Zelle prüfen
    Select Case rngZiel.Row
    Case Is  66
    strMsgTxt = "Selektierte Zelle liegt außerhalb der Zeilen 14 bis 66!" & vbLf
    GoTo Zellauswahl
    Case Else
    If (rngZiel.Row - 13) Mod 4 = 1 Then
    'Zeilen kopieren und einfügen
    rngCopy.Copy
    ActiveSheet.Cells(rngZiel.Row, rngCopy.Column).Insert Shift:=xlDown
    Application.CutCopyMode = False
    Else
    strMsgTxt = "Es wurde eine Zelle in einer unzulässigen Zeile gewählt!" & vbLf
    GoTo Zellauswahl
    End If
    End Select
    Beenden:
    End Sub
    

    Anzeige
    DANKE! : Copy and Paste mit Dialog
    06.11.2013 09:56:30
    Andi
    Hallo Franz,
    wiederholt ein DANKEschön für die Lösung. Läuft einwandfrei!
    Gruß Andi

    AW: zeilen: Copy and Paste mit Dialog
    05.11.2013 14:39:30
    Andi
    Nochmal Hallo,
    kann man dafür Sorge tragen, dass die Variable "rngZiel" aus einem bestimmten Bereich in Spalte A kommt?
    Sie darf nur folgenden Inhalt haben:
    von A14 ... A18 ... A22 (also jeweils +4) bis A66
    Muss auch das mit einer Schleife belegt werden?
    DANKE ....

    304 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige