Εμφάνιση ενός μόνο μηνύματος
  #4  
Παλιά 08-02-13, 00:46
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.249
Προεπιλογή

Το πλήκτρο Enter θα πυροδοτήσει το συμβάν KeyUp() μόνο αν δεν μεταφερθεί η εστίαση σε άλλο πεδίο (AutoTab).


Αντικατέστησε λοιπόν τον κώδικα:

Κώδικας:
Private Sub ComboBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
        .......................
        .......................
End Sub
με τον παρακάτω:

Κώδικας:
Private Sub ComboBox1_AfterUpdate()
    If Trim(ComboBox1.Text) = "" Then Exit Sub
    ComboBox1.Text = Trim(ComboBox1.Text)
    Set c = rng.Find(ComboBox1.Text, LookIn:=xlValues)
    If c Is Nothing Then
        If MsgBox("Η εγγραφή αυτή δεν υπάρχει στη λίστα." & _
                " Να την καταχωρήσω;", vbQuestion + vbYesNo) = vbYes Then
            Set rng = rng.Resize(rng.Rows.Count + 1, 1)
            If rng.Row = 1 Then
                Set rng = rng.Offset(1).Resize(1, 1)
                rng.Value = ComboBox1.Text
                ComboBox1.AddItem rng.Text
            Else
                rng(rng.Rows.Count).Value = ComboBox1.Text
                FillCombo ComboBox1, rng
            End If
            ComboBox1.Value = rng(rng.Rows.Count).Text
        End If
    End If
End Sub
Καλή συνέχεια!

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση