Thema Datum  Von Nutzer Rating
Antwort
Rot Ctrl-Taste deaktivieren
02.03.2011 11:48:36 Stefan
NotSolved

Ansicht des Beitrags:
Von:
Stefan
Datum:
02.03.2011 11:48:36
Views:
1628
Rating: Antwort:
  Ja
Thema:
Ctrl-Taste deaktivieren

Hallo zusammen

Ich suche nach einer Lösung, die Ctrl-Taste z.B. beim Aufruf eines Tabellen-Blatts zu deaktivieren. Oder mindestens zu prüfen, ob die Ctrl-Taste beim eingeben von Werten in eine Zelle gedrückt wird. Um dann eine Meldung zu generieren und evt. die gerade eingegebenen Werte gleich wieder zu löschen.

1. Hat jemand eine Idee, wie die  Ctrl-Taste (Strg) deaktiviert werden kann?

2. Oder wie abgefragt werden kann, ob beim Eingeben eines Werts die Ctrl-Taste gedrückt wird.

Bemerkung:

Bei folgendem Vorgehen können mehrere Werte in einem Schritt in mehrere selektierte Zellen eingegeben werden:

1. mehrere Zellen markieren

2. Wert eingeben, aber noch nicht mit Return oder Enter abschliessen

3. Ctrl (Strg) drücken

4. bei gedrückter Ctrl-Taste -> Enter bzw. Return drücken

 

Grundsätzlich will ich in einer Tabelle eine Hinweis-Meldung (msgbox) generieren, wenn ein Wert, welcher in der Tabelle bereits existiert, eingegeben wird.

Mit folgendem Code funktioniert dies auch, ausser wenn jemand wie oben beschrieben, mehrere Zellen markiert und die Wert-Eingabe mit gedrückter Ctrl-Taste und Enter bzw. Return abschliesst. Auf diese Weise ist es also möglich, bereits existierende Werte in der Tabelle einzugeben. Im aktuellen Code wird lediglich eine Meldung generiert, wenn beim Eingeben eines Werts mehrere Zellen markiert sind.

aktueller Code:

Private Sub Worksheet_Change(ByVal Target As Range)                                          ' startet, wenn ein Blatt verändert wird
    Dim Bereich As Range                                                                     ' Variable, zur Definition des Bereichs, in welchem doppelte Werte verhindert werden sollen
    Dim lastRowNr As Long                                                                    ' letzte Zeilen-Nummer in einer Spalte
   
    lastRowNr = 65536                                                                        ' letzte Zeilen-Nummer in einer Spalte
    Set Bereich = Range("A1:IV" & lastRowNr & "")                                            ' Bereich, in welchem nach doppelten Werten gesucht werden soll
  
    If Target.Cells.Count > 1 Then                                                           ' Prüfung, ob mehrere Zellen selektiert sind
        MsgBox "Bitte nicht mehrere Zeilen selektieren!", vbInformation
        'Target.Cells.Clear
    Else
        If WorksheetFunction.CountIf(Bereich, Target.Value) > 1 Then                         ' Prüfung, ob ein Wert im definierten Bereich bereits vorhanden ist
            MsgBox "Der Wert existiert bereits!", vbInformation
            Target.Select
        End If
    End If
End Sub

 

Besten Dank für euere Lösungen bereits im Voraus!


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Ctrl-Taste deaktivieren
02.03.2011 11:48:36 Stefan
NotSolved