Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1652to1656
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
Inhaltsverzeichnis

Selectierte Zelle kopieren

Selectierte Zelle kopieren
23.10.2018 18:12:33
kurt
Guten Abend,
ich habe dies:
merk = ActiveCell.Address
'MsgBox merk
Sheets("Halle1").Cells(Rows.Count, 5).End(xlUp).Copy
' merk = PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Der Courser steht auf der letzten stelle der Spalte A.
Da ich die Adresse wo ich vorher stand mit merk gemerkt habe
und dies auch in der Msgbox richtig angezeigt wird,
klappt es nicht den Wert in die Zelle merk zu setzen.
Bin jetzt schon 2h dran komisch...
mfg kurt bw

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Selectierte Zelle kopieren
23.10.2018 18:53:43
Dieter
Hallo Kurt,
die auskommentierte Zeile muss lauten
Range(merk).PasteSpecial Paste:=xlPasteValues
Viele Grüße
Dieter
Super aber kannst Du
23.10.2018 19:00:48
kurt
Hallo Dieter,
super funktioniert.
Kannst Du noch helfen, ich möchte in der aktuellen Spalte ab 1 Zelle tiefer
bis zum ende die Texte löschen.
Danach soll die aktive Zelle wieder zu "merk" zurück.
mfg kurt bw
AW: Super aber kannst Du
23.10.2018 19:55:42
Hajo_Zi
Hallo Kurt,
Du möchtest löschen.
Sub loeschen()
Dim Merk As String
Merk = "A5:A10"
Range(Cells(Range(Merk).Cells(1).Row, ActiveCell.Column), Cells(1048576, ActiveCell.Column)) _
.Delete
Range(Merk).Select
End Sub

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Anzeige
Hallo Hajo...
23.10.2018 20:06:43
kurt
Hallo Hajo,
das funktioniert, bei bestimmten Bereich Merk (= "A5:A10")aber ich brauch es in der aktiven Spalte
ab Activen Zelle bis zur letzt belegten Zelle.
würde mich freuen...
mfg kurt wb
AW: Hallo Hajo...
23.10.2018 20:11:22
Hajo_Zi
Du hattest geschrieben
in der aktuellen Spalte ab 1 Zelle tiefer

Sub loeschen2()
Dim Merk As String
Merk = "A5:A10"
Columns(ActiveCell.Column).Delete
Range(Merk).Select
End Sub
Gruß Hajo
Anzeige
Hallo Hajo habe mal..
23.10.2018 20:27:35
kurt
Hallo Hajo,
habe mal abgeändert und select zum Testen eingesetzt.
jetzt wird allerdings die ganze Spalte selectiert.
Dim Merk As String
'Merk = "A5:A10"
Merk = ActiveCell.Address (stand bei H3)
Columns(ActiveCell.Column).Select
mfg kurt bw
AW: Hallo Hajo habe mal..
23.10.2018 20:30:20
Hajo_Zi
Hallo Kurt,
das verstehe ich jetzt nicht. Du hattest geschrieben das die ganze Spalte gelöscht werden soll.
Da ich die Aufgabe falsch verstanden habe bin ich raus.

Hallo Hajo, stimmt doch nicht
23.10.2018 20:57:31
kurt
Hallo Hajo,
das hatte ich geschrieben:
ich möchte in der aktuellen Spalte ab 1 Zelle tiefer
bis zum ende die Texte löschen.
der Bezug war ja ab der akt.Zelle Merk +1 tiefer.
Ich habe gedacht das dies für dich eine Kleinigkeit ist.
mfg kurt bw
Anzeige
Ich habs gefunden... --))
23.10.2018 21:19:47
kurt
Hallo zusammen,
ich habe die Lösung gefunden.
Der einzige Nachteil, die letzte beschriebene Zelle war H15, allerdings habe ich zum Test
select eingesetzt um zu anzuschauen.
Dim merk As String
'Merk = "A5:A10"
merk = ActiveCell.Address
' Columns(ActiveCell.Column).Select 'Delete
' Range(Merk).Select
Range(Cells(Range(merk).Cells(1).Row, ActiveCell.Column), Cells(Rows.Count, ActiveCell.Column)).Select
mfg kurt wb
AW: Selectierte Zelle kopieren
23.10.2018 20:00:22
Dieter
Hallo Kurt,
wenn ich dich richtig verstehe, dann könnte das so aussehen:
Sub Test()
merk = ActiveCell.Address
MsgBox merk
Sheets("Halle1").Cells(Rows.Count, 5).End(xlUp).Copy
Range(merk).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
spalte = ActiveCell.Column
zeile = ActiveCell.Row
letztezeile = Sheets("Halle1").Cells(Rows.Count, spalte).End(xlUp)
Range(merk).Offset(1, 0).Resize(letztezeile - zeile).ClearContents
End Sub
Viele Grüße
Dieter
Anzeige
Hallo Dieter Laufzeitfehler 13
23.10.2018 20:10:16
kurt
AW: Hallo Dieter Laufzeitfehler 13
23.10.2018 22:14:07
Dieter
Hallo Kurt,
ich habe gerade erst wieder reingeschaut.
Sicherheitshalber habe ich jetzt "Option Explicit" dazu gesetzt.
Damit wäre mir der Fehler sofort aufgefallen.
Das Programm sieht jetzt so aus:
Option Explicit
Sub Test()
Dim letzteZeile As Long
Dim merk As String
Dim spalte As Long
Dim zeile As Long
merk = ActiveCell.Address
Sheets("Halle1").Cells(Rows.Count, 5).End(xlUp).Copy
Range(merk).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
spalte = ActiveCell.Column
zeile = ActiveCell.Row
letzteZeile = Sheets("Halle1").Cells(Rows.Count, spalte).End(xlUp).Row
Range(merk).Offset(1, 0).Resize(letzteZeile - zeile).ClearContents
End Sub
Viele Grüße
Dieter
Anzeige
AW: Hallo Dieter Laufzeitfehler 13
23.10.2018 22:26:30
Dieter
Hallo Kurt,
noch eine kleine Korrektur, falls die Spalte schon von der aktiven Zelle an leer ist:
Option Explicit
Sub Test()
Dim letzteZeile As Long
Dim merk As String
Dim spalte As Long
Dim zeile As Long
merk = ActiveCell.Address
Sheets("Halle1").Cells(Rows.Count, 5).End(xlUp).Copy
Range(merk).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
spalte = ActiveCell.Column
zeile = ActiveCell.Row
letzteZeile = Sheets("Halle1").Cells(Rows.Count, spalte).End(xlUp).Row
If letzteZeile > zeile Then
Range(merk).Offset(1, 0).Resize(letzteZeile - zeile).ClearContents
End If
End Sub
Viele Grüße
Dieter
Anzeige
AW: Hallo Dieter Laufzeitfehler 13
24.10.2018 03:33:15
Gerd
Moin!
Sub bw()
Sheets("Halle1").Cells(Rows.Count, 5).End(xlUp).Copy
With ActiveCell
.PasteSpecial xlPasteValues
Application.CutCopyMode = False
.Offset(1).Resize(Application.Max(1, Cells(Rows.Count, .Column).End(xlUp).Row - .Row), 1). _
ClearContents
End With
End Sub

Gruß Gerd
Nochmals an ALLE Danke -)
24.10.2018 10:15:27
kurt
Guten Morgen,
habe noch etwas angepaßt, da ich jetzte die vorhandenen alten Daten löschen
wollte, so funktioniert es:
merk = ActiveCell.Address
spalte = ActiveCell.Column
zeile = ActiveCell.Row
letzteZeile = Sheets("Adressen").Cells(Rows.Count, spalte).End(xlUp).Row
If letzteZeile > zeile Then
Range(merk).Offset(0, 0).Resize(letzteZeile - zeile + 1).Select 'ClearContents
End If
mfg kurt bw
Anzeige
AW: Nochmals an ALLE Danke -)
24.10.2018 11:12:50
Dieter
Hallo Kurt,
vielen Dank für deine Rückmeldung.
Nur noch eine kleine Bemerkung:
In dem Statement
Range(merk).Offset(0, 0).Resize(letzteZeile - zeile + 1).Select

kannst du Offset(0, 0) weglassen, wenn du keinen Versatz haben willst.
Es reicht also
Range(merk).Resize(letzteZeile - zeile + 1).Select
Viele Grüße
Dieter
Dieter perfekt...Wieso kann ich nicht die Tabelle
24.10.2018 12:45:07
kurt
Hallo Dieter,
perfekt, Danke.
Ich starte das Makro befinde mich in Tabelle (Auftrag),
wieso kann ich nicht die Tabelle (Daten) aktivieren ?
Sheets("Daten").Range("A1").Select
mfg kurt wb
Anzeige
AW: Dieter perfekt...Wieso kann ich nicht die Tabelle
24.10.2018 12:49:49
Daniel
Hi
Natürlich kannst du die Tabelle aktivieren.
Was du nicht kannst, ist einen Zellbereich selektieren, der nicht auf dem aktiven Tabellenblatt liegt.
Hier gilt, erst das Blatt selektieren, danach den Zellbereich.
Oder verwende Application.Goto
Gruß Daniel
erledigt -)
24.10.2018 12:50:29
kurt
Hallo,
ich habs so gemacht:
Sheets("Daten").Activate
Sheets("Daten").Range("A1").Select
mfg kurt wb
erledigt -)
24.10.2018 12:50:30
kurt
Hallo,
ich habs so gemacht:
Sheets("Daten").Activate
Sheets("Daten").Range("A1").Select
mfg kurt wb

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige