Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1560to1564
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

Makro - Befehl ausführen wenn Zelle markiert ist

Makro - Befehl ausführen wenn Zelle markiert ist
30.05.2017 12:27:13
Mimi
Hallo alle zusammen,
ich brauche dringend eure Hilfe!
Ich habe eine Kundendatenbank geschrieben. Soweit klappt auch alles wie es soll. Ich habe ein Makro, bei dem die Daten des Kunden in ein anderes Blatt kopiert werden. Klappt auch, allerdings wird immer automatisch der erste Kunde ausgewählt. Gebraucht wird aber: Ich wähle einen Kunden aus und markiere eine beliebige Zelle in der Zeile. Bsp: Kunde Max Mustermann steht in Zeile 18. Ich kann eine beliebige Zelle in Zeile 18 auswählen / anklicken / markieren und das Makro kopiert nicht mehr die 1. Zeile sondern die ausgewählt.
habt ihr eine Idee für ein Makro?
Das würde mir sehr weiterhelfen, vielen Dank!
Liebe Grüße
Mimi

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

Betreff
Datum
Anwender
Anzeige
Makro - Befehl ausführen wenn Zelle markiert ist
30.05.2017 12:31:03
Hajo_Zi
ich hätte aus dem Beitrag gelesen, das Du schon ein Makro hast. Das nur die falsche Zeile kopiert?
Nur wenige sehen dies Makro.

AW: Makro - Befehl ausführen wenn Zelle markiert ist
30.05.2017 13:03:50
Mimi
Genau, ich habe das Makro aufgezeichnet:
Sub übetragen()
' übetragen Makro
Range("A3:B3").Select
Selection.Copy
Sheets("Outlook").Select
Range("E3").Select
ActiveSheet.Paste
Range("B40").Select
Sheets("Datenbank").Select
Range("C3,E3,F3").Select
Range("F3").Activate
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E14").Select
ActiveSheet.Paste
Sheets("Datenbank").Select
Range("G3:H3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E9").Select
ActiveSheet.Paste
Sheets("Datenbank").Select
Range("I3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E12").Select
ActiveSheet.Paste
Sheets("Datenbank").Select
Range("J3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E11").Select
ActiveSheet.Paste
Sheets("Datenbank").Select
Range("K3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E16").Select
ActiveSheet.Paste
Range("D3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Outlook").Select
Range("E4").Select
ActiveSheet.Paste
End Sub
Aber es wird halt immer nur die erste Zeile kopiert.
Viele Grüße
Anzeige
falscher Code nicht Zeile 1
30.05.2017 13:13:49
Hajo_Zi
das ist der falsche Code da wird nie die erste Zeile kopiert.
mal bereinigt.
Option Explicit
Sub übetragen()
' übetragen Makro
Range("A3:B3").Copy Sheets("Outlook").Range("E3")
Range("F3").Copy Sheets("Outlook").Range("E14")
Sheets("Datenbank").Range("G3:H3").Copy Sheets("Outlook").Range("E9")
Sheets("Datenbank").Range("I3").Copy Sheets("Outlook").Range("E12")
Sheets("Datenbank").Range("J3").Copy Sheets("Outlook").Range("E11")
Sheets("Datenbank").Range("K3").Copy Sheets("Outlook").Range("E16")
Sheets("Datenbank").Range("D3").Copy Sheets("Outlook").Range("E4")
End Sub

Gruß Hajo
Anzeige
möchte Hajo beipflichten
30.05.2017 13:18:39
Werner
Hallo Mimi,
der Code hat jetzt absolut nichts damit zu tun, dass eine Zeile von einem Blatt in ein anderes kopiert werden soll.
Ich denke, dass du am besten mal eine Beispielmappe zu Verfügung stellts, aus der klar wird, was du eigentlich möchtest.
Gruß Werner
AW: Makro - Befehl ausführen wenn Zelle markiert ist
30.05.2017 13:08:41
Werner
Hallo Mimi,
da würde ich persönlich lieber das Doppelklickereignis des Blattes benutzen.
Im Prinzip so:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim loLetzte As Long
With Worksheets("Tabelle2")
'## Ermitteln der ersten freien Zelle in Spalte A ##
'## es wird davon ausgegangen, dass in Zeile 1    ##
'## Überschriften vorhanden sind                  ##
loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
End With
'## wirkt sich nur aus bei Doppelklick im Bereich ##
'## von Spalte A (=1) bis Spalte G (=7)           ##
If Target.Column >= 1 And Target.Column 
Code gehört ins Tabellenblatt von dem aus die Daten ins Blatt 2 kopiert werden sollen.
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren
Sobald im Tabellenblatt im Bereich von Spalte A bis Spalte G in eine Zelle doppelt geklickt wird, wird die entsprechende Zeile ins Tabellenblatt 2 in die erste freie Zeile (Spalte A) kopiert.
Ist aber nur ein Beispiel, für deine speziellen Bedürfnisse fehlen genauere Angaben deinerseits oder eine Beispielmappe.
Gruß Werner
Anzeige
AW: Makro - Befehl ausführen wenn Zelle markiert ist
30.05.2017 13:23:02
Mimi
Hallo Werner,
Das klappt super! Vielen vielen Dank *-*
Gerne u. Danke für die Rückmeldung. o.w.T.
30.05.2017 13:25:34
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige