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

Forumthread: VBA Zelle auswählen durch Klick

VBA Zelle auswählen durch Klick
29.05.2021 10:42:03
Vanessa
Hallo zusammen,
ich habe folgendes Problem:
Ich habe eine Auswahl von Daten bzw. Werten in den Zellen B22:F24. Ich möchte, dass bei der Auswahl einer Zelle in diesem Bereich, der Wert in der Zelle G22 ausgegeben wird.
Das heißt am Ende möchte ich den Wert ausgegeben haben durch einen Mausklick auf die jeweilige Zelle, die ich benötige.
Habe es bis jetzt geschafft den ganzen Datenbereich zu kopieren und einzufügen mit dem folgenden Code.
Hilft mir im Endeffekt nicht weiter, wenn alle Werte aus dem Datenbereich auftauchen...
Hoffe jemand kann helfen :)

Sub kopieren ()
Worksheet("Tabelle1").Range("B22:F24").Copy Destination:'=Worksheets("Zeugnis").Range("G22")
End Sub
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Zelle auswählen durch Klick
29.05.2021 11:06:16
RPP63
Moin!
Ich nehme doch schwer an, dass das (entgegen deines Code-Snippets) im aktiven Blatt stattfinden soll.
Ins Modul der Tabelle (Rechtsklick auf Tabellenregister, Code anzeigen):
Microsoft Excel Objekt Tabelle8
Option Explicit 
 
Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
If Not Intersect(Range("B22:F24"), Target) Is Nothing Then 
  If Target.CountLarge = 1 Then 
    Range("G22") = Target 
  End If 
  Else 
  Range("G22") = Null 
End If 
End Sub 
Gruß Ralf
Anzeige
AW: VBA Zelle auswählen durch Klick
29.05.2021 11:56:54
Vanessa
Vielen Dank hat geklappt!
Aber würde gerne noch etwas wissen:
Wenn ich den Wert auswähle im Bereich B22:F24 erhalte ich den Zielwert in G22. Das passt!
Nun habe ich noch Werte in B27:F29 und will diese in G27 ausgegeben haben.
Und nochmals Werte in B31:F34 und will diese in G31 erhalten.
Ich bin ein Anfänger habe auch schon ein wenig rumprobiert , aber das klappt bei mir nicht.
Anzeige
AW: VBA Zelle auswählen durch Klick
29.05.2021 12:29:06
hary
Moin
Kann so so loesen.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("B22:F24,B27:F29,B31:F34"), Target) Is Nothing Then
If Target.CountLarge = 1 Then
Select Case Target.Row
Case 22 To 24: Range("G22") = Target
Case 27 To 29: Range("G27") = Target
Case 31 To 34: Range("G31") = Target
End Select
End If
Else
Union(Range("G22"), Range("G27"), Range("G31")) = Null
End If
End Sub
gruss hary
Anzeige
;

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
Anzeige

Infobox / Tutorial

Zelle auswählen in Excel VBA durch Klick


Schritt-für-Schritt-Anleitung

Um eine Zelle in Excel über VBA auszuwählen und den Wert in einer anderen Zelle darzustellen, kannst du den folgenden Code verwenden. Dieser Code wird im Modul des Arbeitsblattes platziert:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Suche nach dem gewünschten Arbeitsblatt im Projekt-Explorer (z.B. Tabelle1).
  3. Klicke mit der rechten Maustaste auf das Arbeitsblatt und wähle "Code anzeigen".
  4. Füge den folgenden Code in das Codefenster ein:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Range("B22:F24,B27:F29,B31:F34"), Target) Is Nothing Then
        If Target.CountLarge = 1 Then
            Select Case Target.Row
                Case 22 To 24: Range("G22") = Target
                Case 27 To 29: Range("G27") = Target
                Case 31 To 34: Range("G31") = Target
            End Select
        End If
    Else
        Union(Range("G22"), Range("G27"), Range("G31")) = Null
    End If
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Klicke auf eine Zelle im Bereich B22:F24, B27:F29 oder B31:F34, um den Wert in der entsprechenden G-Zelle anzuzeigen.

Häufige Fehler und Lösungen

  • Fehler: Der Wert wird nicht aktualisiert.

    • Stelle sicher, dass der Code im richtigen Arbeitsblatt-Modul eingefügt wurde. Der Code sollte nicht im allgemeinen Modul sein.
  • Fehler: Der Code funktioniert nicht für mehrere Zellen.

    • Der Code ist so konzipiert, dass nur eine Zelle ausgewählt werden kann. Wenn du mehrere Zellen auswählen möchtest, musst du den Code anpassen.

Alternative Methoden

Eine alternative Methode, um eine Zelle auszuwählen und den Wert anzuzeigen, ist die Verwendung eines Excel Makros, das über eine Schaltfläche aktiviert wird. Du kannst eine Schaltfläche in deinem Arbeitsblatt einfügen und den folgenden Code mit dem Makro verknüpfen:

Sub ZelleAuswaehlen()
    Dim zelle As Range
    Set zelle = Application.InputBox("Wähle eine Zelle:", Type:=8)
    If Not zelle Is Nothing Then
        Range("G22") = zelle.Value  ' Ändere die Zielzelle nach Bedarf
    End If
End Sub

Um das Makro auszuführen, musst du die Schaltfläche anklicken und die gewünschte Zelle auswählen.


Praktische Beispiele

  1. Einfaches Beispiel für die Auswahl einer Zelle:

    • Wenn du den Bereich B22:F24 hast und auf eine Zelle klickst, wird der Wert in G22 angezeigt.
  2. Erweiterte Funktionalität:

    • Mit dem oben genannten Code kannst du auch Werte in den Zellen G27 und G31 basierend auf der Auswahl in den entsprechenden Bereichen anzeigen lassen.

Tipps für Profis

  • Nutze das Worksheet_SelectionChange-Ereignis, um dynamische Interaktionen in deinem Arbeitsblatt zu schaffen. Dies ermöglicht eine interaktive Benutzeroberfläche.
  • Teste den Code regelmäßig, um sicherzustellen, dass alle Referenzen auf die richtigen Zellen zeigen. Dies hilft, Fehler zu vermeiden.
  • Verwende Debug.Print-Anweisungen, um Probleme im Code leichter zu identifizieren.

FAQ: Häufige Fragen

1. Kann ich den Bereich ändern, den ich auswählen möchte?
Ja, du kannst die Werte in der Range-Funktion einfach anpassen, um andere Zellen auszuwählen.

2. Wie kann ich den Code anpassen, um andere Zielzellen zu verwenden?
Ändere die Zellenreferenzen in der Range-Anweisung, um die gewünschten Zielzellen festzulegen.

3. Ist dieser Code mit allen Excel-Versionen kompatibel?
Der Code sollte in den meisten modernen Versionen von Excel (2010 und neuer) funktionieren.

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