Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

MsgBox mit Variablen-Text aus Zelle

Betrifft: MsgBox mit Variablen-Text aus Zelle von: deniz
Geschrieben am: 26.09.2020 10:32:57

Hallo zusammen,
ich habe eine Frage.

In "Tabelle 1" sind in Spalte 4 ab Zeile 16 bis unendlich mehrere Zahlen hinterlegt.

In "Tabelle 2" sind in Spalte 2 ab Zeile 4 bis unendlich die gleichen Zahlen in anderer Reihenfolge mit einem jeweils dazugehörigen Text in Spalte 5 hinterlegt.

Ist es möglich, das bei einem Doppelklick auf eine Zahl in "Tabelle 1", diese Zahl in "Tabelle 2" gesucht wird und der dazugehörige Text (Spalte 5, ab Zeile 4) aus "Tabelle 2" in eine MsgBox erscheint?

Ich habe eine Beispieldatei hochgeladen.

https://www.herber.de/bbs/user/140452.xlsx

Danke für Eure Hilfe.


Betrifft: AW: MsgBox mit Variablen-Text aus Zelle
von: Hajo_Zi
Geschrieben am: 26.09.2020 10:51:25

ich habe ein Problkem den VBA Code konnrte ich in Deiner Datei nicht finden.
Das liegt wohl daran das bei mir eine XLSX Datei keim ;akro hat.

Msgbox Target.

GrußformelHomepage

Betrifft: Toller Text von Hajo..owT
von: Helmut
Geschrieben am: 26.09.2020 11:17:01



Betrifft: AW: Hajo hat wohl ne neue Tastatur :-)
von: JoWE
Geschrieben am: 26.09.2020 13:18:49



Betrifft: AW: MsgBox mit Variablen-Text aus Zelle
von: JoWE
Geschrieben am: 26.09.2020 10:51:26

Hallo Deniz,

versuch's mal mit diesem Code in "Tabelle1"
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim c As Range
    Dim firstAddress As String
    Dim tb1 As Worksheet
    Set tb1 = ThisWorkbook.Sheets("Tabelle1")
    Dim tb2 As Worksheet
    Set tb2 = ThisWorkbook.Sheets("Tabelle2")
    With tb2.Range("B:B")
        Set c = .Find(Target.Value, LookIn:=xlValues)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                myMsg = MsgBox("gefunden: " & vbCr & c.Value & _
                 " in Tabelle2 " & c.Address & vbCr & vbCr & "Text: " & _
                 vbCr & tb2.Cells(c.Row, 6).Value, vbOKOnly)
                Set c = .FindNext(c)
                Exit Sub
            Loop While Not c Is Nothing
        End If
    End With
End Sub
Gruß
Jochen

Betrifft: AW: MsgBox mit Variablen-Text aus Zelle
von: Nepumuk
Geschrieben am: 26.09.2020 10:54:03

Hallo deniz,

Rechtsklick auf den Tabellenreiter von Tabelle1 - Code anzeigen. Folgende Prozedur einfügen:

Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim objCell As Range
    If Target.Column = 4 And Target.Row > 15 Then
        If Not IsEmpty(Target.Value) Then
            Set objCell = Tabelle2.Columns(2).Find(What:=Target.Text, _
                LookIn:=xlValues, LookAT:=xlWhole, MatchCase:=False)
            If Not objCell Is Nothing Then
                Call MsgBox(objCell.Offset(0, 4).Text, vbInformation, "Information")
                Set objCell = Nothing
            Else
                Call MsgBox("Nummer nicht gefunden.", vbExclamation, "Hinweis")
            End If
            Cancel = True
        End If
    End If
End Sub

Gruß
Nepumuk

Betrifft: AW: MsgBox mit Variablen-Text aus Zelle
von: deniz
Geschrieben am: 26.09.2020 11:16:39

Wow DANKE.
Mein Tag ist gerettet.

Der Code hat direkt geklappt. :-)