19-09-17, 18:54
|
Όνομα: Γιώργος Έκδοση λογισμικού Office: Ms-Office 2010 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 18-06-2010
Μηνύματα: 3.674
| |
Καλησπέρα
Για να ελέγχουμε τη σειρά ενημέρωσης προτείνω:
1) Τη δημιουργία 6 ερωτημάτων με την παρακάτω μορφή. Κώδικας: UPDATE Table1 SET Table1.Κωδικός = "Σ" & Mid([Κωδικός],2,20)
WHERE Left([Κωδικός],1)="Ε";
Γίνεται εύκολα αντιγράφοντας το ερώτημα και κάνοντας στα αντίγραφα τις κατάλληλες αλλαγές, στο όνομα του πίνακα, στο γράμμα στην πρόταση SET και στο γράμμα στην πρόταση WHERE.
.
Στη συνέχεια τρέχουμε τα ερωτήματα με τη σειρά που θέλουμε.
2) Να χρησιμοποιήσουμε κώδικα.
Στο συμβάν κλικ ενός κουμπιού φόρμας αντιγράφουμε τον παρακάτω κώδικα. Κώδικας: Private Sub cmdUpdate_Click()
'Μάλλον θα χρειαστεί αναφορά στη βιβλιοθήκη Microsoft DAO 2.8 Object Library
'Μενού Tools > References ....> τσεκάρισμα βιβλιοθήκης
Dim strStart As Variant, strTo As Variant
Dim i As Long, rs As dao.Recordset, strSQL As String
strStart = Array("Σ", "Ε", "Δ", "Γ", "Β", "Α")
strTo = Array("G", "Σ", "Ε", "Δ", "Γ", "Β")
For i = 0 To UBound(strStart)
'Το Table1 να αντικατασταθεί με το πραγματικό όνομα του πίνακα
strSQL = "Select [Κωδικός] From Table1 Where Left([Κωδικός],1)='" & strStart(i) & "'"
Set rs = CurrentDb.OpenRecordset(strSQL)
If rs.RecordCount Then
Do Until rs.EOF
rs.Edit
rs![Κωδικός] = strTo(i) & Mid(rs![Κωδικός], 2)
rs.Update
rs.MoveNext
Loop
End If
Next
MsgBox "Η ενημέρωση ολοκληρώθηκε."
exitSub:
Exit Sub
errHandler:
MsgBox Err.Description, vbCritical, "Error #" & Err.Number
End Sub
|