Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Klick auf eine Zelle, 2 Daten auslesen/schreiben

Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 13:21:00
Michael
Hallo liebe Excel Freunde,
Ich habe ein für mich großes Problem. :)
Vorliegen habe ich einen Datensatz bestehend aus 3 Spalten Name/Zahl1/Zahl2.
Nun würde ich gerne beim Klick auf den die Zelle mit dem Namen (quasi als Auswahl) Zahl 1 und 2 auslesen wollen
und diese in 2 neue bestimmte Zellen einfügen.
Ist das möglich?
Ich habe schon etwas hier im Forum gesucht für ein Klick Makro oder so, aber die Auslese Abfrage bereitet mir da Probleme die einzubauen geschweige denn zu schreiben. :)
Bedanke mich schonmal im Vorraus für antworten.
Grüße
Michael

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 13:54:00
Uwe
Hi,
wenn die drei Spalten A,B,C sind, dann schreibe in das Modul des Tabellenblattes:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Count > 1 Or Target.Column  1 Then Exit Sub
Target.Offset(0, 1).Resize(1, 2).Copy
Target.Offset(0, 5).PasteSpecial (xlPasteValues)
Application.CutCopyMode = False
End Sub


mit Target.Offset(0, 5).PasteSpecial (xlPasteValues) wird es in die Spalte E/G kopiert, dass musst Du für Deine bestimmten Zellen anpassen, oder nochmal nachfragen mit der Info welche Zellen.
Gruß
Uwe
(:o)

Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 14:09:00
Michael
vielen dank.
Also die spaltenwahl im makro vesteh ich nicht so ganz.
In meiner Datenbank wären die 3 Spalten Spalte A (name), C(zahl1), E(zahl2)
und ausgabe wäre Zahl 1 in H11 und Zahl 2 in H23.
Oder muss ich excel für das makro auf z1s1 umstellen?
Grüße
Michael

Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 14:12:00
Michael
ahh. nach nochmaligem nachlesen hab ich es verstanden.
Resize(1, 2).Copy
bedeutet copy aus b und c
aber wie paste ich das in eine spalte mit unterschiedlichen zeilen?

AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 14:35:19
Uwe
Hi,
ich hatte das mit copy/ paste ziemlich allgemein gehalten, damit Du das besser anpassen kannst, und ich war davon ausgegangen, dass Zahl1 und Zahl2 nebeneinander liegen.
So wie Du es jetzt beschreibst ist es noch einfacher:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Count > 1 Or Target.Column  1 Then Exit Sub
Range("H11").Value = Target.Offset(0, 2).Value
Range("H23").Value = Target.Offset(0, 4).Value
End Sub


Ich hoffe ich habe Dich richtig verstanden.
Gruß
Uwe
(:o)

Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 14:44:18
Michael
Sehr klasse, 1 Mio Dankeschön.
Damit du siehst, dass ich auch versucht habe etwas zu schreiben, hier mein ergebnis aus deiner Vorlage.
Nur ist er halt bei Zeile A2 dann auch bei der Ausgabe eins runtergegangen.
If Target.Count > 1 Or Target.Column <> 1 Then Exit Sub
Target.Offset(0, 2).Resize(1, 1).Copy
Target(11, 8).PasteSpecial (xlPasteValues)
Target.Offset(0, 4).Resize(1, 1).Copy
Target(23, 8).PasteSpecial (xlPasteValues)
Application.CutCopyMode = False
Aber deine neue Idee klappt einwandfrei.
Herzlichen Dank.
Grüße
Michael

Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 15:06:00
Uwe
Hi Michael,
da hattes Du auch FAST schon richtig gedacht. So klappt es auch:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Count > 1 Or Target.Column  1 Then Exit Sub
Target.Offset(0, 2).Resize(1, 1).Copy
Cells(11, 8).PasteSpecial (xlPasteValues)
Target.Offset(0, 4).Resize(1, 1).Copy
Cells(23, 8).PasteSpecial (xlPasteValues)
Application.CutCopyMode = False
End Sub


Bei Paste muss Du Cells() sagen. Target() ist immer die doppelt geklickte Zelle! Cells ist dann das was Du willst. Aber wie gesagt, es geht auch ohne copy/paste.
Gruß
Uwe
(:o)

Anzeige
AW: Klick auf eine Zelle, 2 Daten auslesen/schreiben
02.04.2008 15:26:02
Michael
ui. da lag ich ja echt nicht weit daneben.
Danke noch für die Info.
Weiß ich für's nächste Mal bescheid.
Schönen Abend noch.
Grüße
Michael
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Klick auf eine Zelle, 2 Daten auslesen und schreiben


Schritt-für-Schritt-Anleitung

Um beim Doppelklick auf eine Zelle in Excel Daten aus einer anderen Zelle zu lesen und in bestimmte Zellen zu schreiben, folge diesen Schritten:

  1. Öffne den VBA-Editor:

    • Drücke Alt + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Wähle im Projektfenster das entsprechende Arbeitsblatt aus (z.B. „Tabelle1“), in dem du das Makro verwenden möchtest.
  3. Füge den folgenden Code ein:

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       If Target.Count > 1 Or Target.Column <> 1 Then Exit Sub
       Range("H11").Value = Target.Offset(0, 2).Value
       Range("H23").Value = Target.Offset(0, 4).Value
    End Sub
    • Dieser Code liest die Werte aus der Zelle rechts (Zahl 1) und zwei Zellen rechts (Zahl 2) von der angeklickten Zelle und schreibt sie in die Zellen H11 und H23.
  4. Schließe den VBA-Editor:

    • Speichere deine Änderungen und schließe den Editor, um zu Excel zurückzukehren.
  5. Teste das Makro:

    • Doppelklicke auf eine Zelle in der ersten Spalte (A), um die Werte in die Zellen H11 und H23 zu übertragen.

Häufige Fehler und Lösungen

  • Fehler: Nichts passiert beim Doppelklicken:

    • Überprüfe, ob das Makro korrekt in das richtige Arbeitsblatt-Modul eingefügt wurde.
  • Fehler: Falsche Werte in den Ausgabezellen:

    • Stelle sicher, dass die Spaltenbezüge im Code korrekt sind. Wenn deine Spalten anders angeordnet sind, musst du die Offset-Werte anpassen.

Alternative Methoden

Eine alternative Methode ist die Verwendung von Formeln anstelle von VBA, um Werte zu übertragen. Du kannst eine Kombination aus SVERWEIS oder INDEX und VERGLEICH verwenden, um die Werte dynamisch zu erhalten, ohne ein Makro zu verwenden.


Praktische Beispiele

Angenommen, du hast folgende Daten:

A B C
Name Zahl 1 Zahl 2
Alice 10 20
Bob 30 40

Wenn du auf die Zelle mit „Alice“ klickst, werden 10 in H11 und 20 in H23 geschrieben.


Tipps für Profis

  • Nutze Application.CutCopyMode = False, um den Auswahlrahmen nach dem Kopieren zu entfernen.
  • Wenn du häufig ähnliche Makros benötigst, überlege, eine Funktion zu erstellen, die die Parameter für verschiedene Zellen anpasst.

FAQ: Häufige Fragen

1. Kann ich das Makro auch für andere Spalten verwenden?
Ja, du kannst die Offset-Werte anpassen, um andere Spalten zu referenzieren.

2. Muss ich Excel für das Makro in eine bestimmte Ansicht umstellen?
Nein, du kannst das Makro in der Standardansicht von Excel verwenden. Das z1s1-Format ist nicht notwendig.

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