
10-02-14, 20:33
|
 | Συντονιστής Όνομα: Σπύρος Τσιλιγιάννης Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 22-11-2011 Περιοχή: Αθήνα
Μηνύματα: 2.321
| |
Καλησπέρα
Παναγιώτη καλώς όρισες στην παρέα μας
Με τύπους DATE, TODAY,...κλπ και ότιδήποτε περιέχει υπολογισμό ημερομηνίας
δεν υπάρχει καμία λύση με το σκεπτικό ότι πρέπει να διατηρούνται οι παλιές εγγραφές
Προτείνω χρήση VBA όπου σε κάθε εγγραφή ονόματος σε συγκεκριμένη στήλη
εισάγεται στο διπλανό κελί ένας αριθμός πρωτοκόλλου μορφής [αριθμός + 1]/[έτος]
(*βλέπε Εικόνα)
Ο παρακάτω κώδικας στο φύλλο Κώδικας: Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Αλλάξτε το Range("B:B") με την περιοχή που θέλετε
If Intersect(Target, Range("B:B")) Is Nothing Then
Exit Sub
Else
'Έλεγχος
If Target.Row = Range("Header").Row Then Exit Sub
If Target.Column > Range("Header").Column Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
If Target(1, 0).Value <> vbNullString Then Exit Sub
If Target(1, 1).Value <> vbNullString Then Exit Sub
'Εκτέλεση
Target(1, 0).Value = Range("StartNum").Value + 1 & "/" & Range("Cur_Year").Value
'Εναλλακτικά σε αυτήν την θέση χωρίς να χρειάζεται η ονομασία Cur_Year και ο τύπος =YEAR(TODAY())
'Target(1, 0).Value = Range("StartNum").Value + 1 & "/" & Year(Date)
Range("StartNum").Value = Range("StartNum").Value + 1
End If
End Sub
Τελευταία επεξεργασία από το χρήστη Spirosgr : 11-02-14 στις 08:11.
Αιτία: Εναλλακτική γραμμή κώδικα
|