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

Forumthread: Makro umschreiben zum zuletzt verw. Blatt zurück

Makro umschreiben zum zuletzt verw. Blatt zurück
11.01.2014 15:46:38
rieckmann
Hallo,
ich möchte eine oder mehrere markierte Zeilen in die erste freie Zeile des
Tabellenblattes "Ausgabeliste" kopieren.
Das funktioniert mit den unten gezeigten Code super.
Nun soll aber nach dem kopieren wieder das zu vor geöffnete Tabellenblatt angezeigt werden.
Besser noch die zu vor markierte Zeile.
(Also nicht wie hier die "Tabelle1")
Wie muss dann dieser Code umgeschrieben werden ?
Gruß
Fred
Sub Kopieren()
Selection.Copy
Sheets("Ausgabeliste").Select 'Name deines Tabellenblatts für Werte einfügen
Range("A1").Select
For i = 1 To 5700
If ActiveCell.Value  "" Then ActiveCell.Offset(1, 0).Select Else Exit For 'falls Zelle voll -> _
nächste Zelle
Next i
ActiveSheet.Paste 'fügt die Werte ein
Sheets("Tabelle1").Select 'geht zurück zum Blatt 1
Application.CutCopyMode = False 'nimmt das kopieren zurück
MsgBox "Die Werte wurden erfolgreich kopiert." 'Info
End Sub

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ohne select
11.01.2014 16:04:44
hary
Moin Fred
Ungetestet. Probier mal so.
Sub Kopieren()
With Sheets("Ausgabeliste")
Selection.Copy
.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row + 1, 1).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False 'nimmt das kopieren zurück
MsgBox "Die Werte wurden erfolgreich kopiert." 'Info
End Sub

gruss hary

Anzeige
AW: ohne select
11.01.2014 16:15:21
rieckmann
Hallo Hary,
danke dir für deine Hilfe.
Nun behakt es sich mit diesen Code der beim öffnen des Blattes ausgelöst, aber sonst wichtig ist.
Kann man nicht erst diesen Code durchlaufen lassen und danach greift dann deiner beim zurücksprung ?
Gruß
Fred
Private Sub Worksheet_Activate()
ActiveSheet.UsedRange.Offset(1).EntireRow.AutoFit
Range("A2").Select
End Sub

Anzeige
AW: ohne select
11.01.2014 16:24:02
rieckmann
Habe das wohl schlecht erklärt !
Das klappt so weit sehr gut,
nur durch das
Private Sub Worksheet_Activate()
ActiveSheet.UsedRange.Offset(1).EntireRow.AutoFit
Range("A2").Select
End Sub
landet man beim zurücksprung ja auf der Zelle A2 und nicht auf der zuvor markiert und kopierten Zeile.
Kann man das irgendwie trennen ?
Also wenn ich eine Zeile mit dein Makro kopiert haben möchte, soll er wieder zurück auf die zuvor markierte Zeile.
Wenn ich aber von einen anderen Vorgang das Tabellenblatt öffne, soll er halt auf A2 springen.
Ich hoffe dass ich mich jetzt verständlicher ausgedrückt habe.
Gruß
Fred

Anzeige
AW: ohne select
11.01.2014 16:35:18
hary
Moin
"von einen anderen Vorgang das Tabellenblatt öffne"
Welches? Das wo du hin kopiert hast(Ausgabeliste) oder wo du herkommst.
gruss hary

AW: Nu, hab ich es..
11.01.2014 16:50:57
hary
Moin Fred
..verstanden.
In ein Modul
Option Explicit
Public a As Boolean 'Pruefvariable
Sub Kopieren()
a = True 'bei ausfuehren des Makros auf True setzten
With Sheets("Ausgabeliste")
Selection.Copy
.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row + 1, 1).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False 'nimmt das kopieren zurück
MsgBox "Die Werte wurden erfolgreich kopiert." 'Info
End Sub

In den Code des Blattes
Private Sub Worksheet_Activate()
If a = False Then 'wenn Pruefvariable False dann
Range("A2").Select
Else              'sonst Pruefvariable(im Moment noch True) auf False setzen
a = False
End If
End Sub

gruss hary

Anzeige
AW: ohne select
11.01.2014 17:05:30
rieckmann
Hallo Hary,
Suuuuuper !
Genau so.
Ich danke die vielmals und wünsche noch ein schönes Wochenende.
Gruß
Fred

AW: ebenso gruss owT.
11.01.2014 17:07:37
hary
.
;

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
Anzeige

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