Ich verwende den folgenden Code, um ein Meldungsfeld zu erstellen, das anzeigt, wenn Zellen A1, A2, A3 ... bis A9 ausgewählt werden, die dann den Text in den Anführungszeichen sowie Text in Zellen V1 (+21) anzeigen , W1 (+22) und X1 (+23) für, wenn zum Beispiel A1 gewählt wird, wenn A2 gewählt wird, wird es die Zeichenkette im folgenden Code sowie Text in den Zellen V2, W2 und X2 und so weiter anzeigen . Ich muss dies für alle 10836-Zeilen tun, aber es scheint, als wären 160 Fälle die Grenze, die diese Methode verwendet. Gibt es einen effizienteren Weg, dies zu tun? Jede Hilfe würde geschätzt werdenWie erstellt man ein Meldungsfeld für mehr als 160 Zeilen (10836), um Text in mehreren Spalten anzuzeigen, abhängig davon, welche Zeile ausgewählt ist?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column = 1 Then
Select Case Target.Row
Case 1, 2, 3, 4, 5, 6, 7, 8, 9
MsgBox "Changes : " & Cells(Target.Row, Target.Column + 22) & vbNewLine & " ABC Comments: " & Cells(Target.Row, Target.Column + 23) & vbNewLine & "XYZ Comments: " & Cells(Target.Row, Target.Column + 21), vbInformation, "Comments"
Case Else:
End Select
End If
End Sub
Können Sie verwenden, wenn target.row <10836 dann –
Was @Nathan sagte (ich es vollständig geschrieben haben, aber dann merkte man es schon gestellt hatte). Nebenbei bemerkt - die 'Case'-Anweisung könnte zu' Case 1 To 9 'verkürzt werden, aber Sie brauchen die 'Case'-Anweisung nicht. –
Vielen Dank für die Hilfe, Ihre Antworten lösten mein Problem. bin dankbar. – ThomasTcred