
27-07-20, 11:22
|
| Όνομα: Θάνος Έκδοση λογισμικού Office: Ms-Office 2007 Γλώσσα λογισμικού Office: Ελληνική | | Εγγραφή: 09-05-2012 Περιοχή: Λάρισα
Μηνύματα: 49
| |
Παιδιά καλημέρα,
δεν το κατάφερα, δεν ξέρω αλλά δεν μου βγαίνει, να πατάω το πλήκτρο με τα ελληνικά και να μου βρίσκει την εγγραφή. Στα αγγλικά μου δουλεύει.
Η Βάση ειναι περίπου 4mb να την επισυνάψω; παραθέτω το event παρακάτω Κώδικας: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo ErrHandler
Dim ctl As Control
Dim fldName As String
Dim rst As Recordset
Select Case KeyCode
Case vbKeyHome
KeyCode = 0
DoCmd.RunCommand acCmdRecordsGoToFirst
Case vbKeyUp
KeyCode = 0
DoCmd.RunCommand acCmdRecordsGoToPrevious
Case vbKeyDown
KeyCode = 0
DoCmd.RunCommand acCmdRecordsGoToNext
Case vbKeyEnd
KeyCode = 0
DoCmd.RunCommand acCmdRecordsGoToLast
Case vbKeyRight, vbKeyLeft
Case 8
Case 13
Case 9, 36 ' tab backspace delete
Case 107, 187 ' + Keypress
KeyCode = 0
If Srchval = "" Then Exit Sub
Set rst = Me.RecordsetClone ' look the record on the formn
rst.FindNext Srchcrit
If rst.NoMatch Then
MsgBox (" Η Εγγραφή Δεν Βρέθηκε! ")
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close
Case 109, 189
KeyCode = 0
If Srchval = "" Then Exit Sub
Set rst = Me.RecordsetClone ' look the record on the formn
rst.FindPrevious Srchcrit
If rst.NoMatch Then
MsgBox (" Η Εγγραφή Δεν Βρέθηκε! ")
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close
Case 48 To 57, 65 To 90 ' numbers and letters(english)
Set ctl = Screen.ActiveControl ' Caption control στην φόρμα
fldName = ctl.Name
Select Case UCase(fldName) ' no search at filters
Case "APREQFLT", "AWARDREQFLT", "AESYMVFLT", "SYMVFLT", "SUPPLIERFLT"
Exit Sub
End Select
' σύγκριση column
If fldName <> Lastfld Then
Srchval = ""
End If
Lastfld = fldName
Srchval = Srchval & Chr(KeyCode)
KeyCode = 0
Select Case fldName
Case "Supplier"
Srchcrit = "[" & fldName & "] like '*" & Srchval & "*'"
Case "AE"
Srchcrit = "[" & fldName & "] like '*" & Srchval & "*'"
Case "Description"
Srchcrit = "[" & fldName & "] like '*" & Srchval & "*'"
Case Else
Srchcrit = "[" & fldName & "] like '" & Srchval & "*'"
End Select
Set rst = Me.RecordsetClone ' lock the record on the formn
rst.FindFirst Srchcrit
If rst.NoMatch Then
MsgBox (" Η Εγγραφή Δεν Βρέθηκε! ")
Else
Me.Bookmark = rst.Bookmark
End If
rst.Close
Case 27
Srchval = ""
KeyCode = 0
Case 122 'shift =1, ctrl =2, alt =3
If Shift <> 4 Then
KeyCode = 0
End If
Case Shift = 5
Srchval = ""
KeyCode = 0
Case Shift = 3
Srchval = ""
KeyCode = 0
Case Else
KeyCode = 0
End Select
Exit Sub ' Exit before error
ErrHandler:
Select Case Err.Number
Case 2046 ' πηγαινε στην επόμενη γραμμή μην δίνεις σημασία
Case Else
MsgBox (" Λάθος " & Err.Number & " " & Err.Description & "! ")
End Select
Resume Next
End Sub
η Υπόθεση ειναι εκεί στην case με τα αγγλικά και τα ελληνικά
Case 48 To 57, 65 To 90
Ευχαριστώ για τον χρόνο σας
Θάνος
|