Καλημέρα στην παρέα
Δημήτρη, στο αρχείο που επισυνάπτω υπάρχει μία προσέγγιση του ζητούμενου, με τη χρήση κώδικα.
Ο κώδικας φαίνεται παρακάτω και μπορείς να τον προσαρμόσεις στις ανάγκες σου.
Κώδικας:
Private Sub Worksheet_Change(ByVal Target As Range)
'Στο Module1 θα πρέπει να υπάρχει η δήλωση: Public x As Variant
Dim blnSum As Boolean
Application.EnableEvents = False
blnSum = True
If IsEmpty(x) Then x = Range("A1:CV100"): blnSum = False
If Application.Intersect(Target, Range("A1:CV100")) Is Nothing Then
Application.EnableEvents = True
Exit Sub
End If
If Target.Cells.Count = 1 Then
If Not IsEmpty(Target.Value) And IsNumeric(Target.Value) Then
If IsNumeric(x(Target.Row, Target.Column)) Then
If blnSum Then Target.Value = x(Target.Row, Target.Column) + Target.Value
End If
End If
End If
x = Range("A1:CV100")
Application.EnableEvents = True
End Sub
Σε ένα τετράγωνο κελιών 100Χ100 αρχίζοντας από το κελί Α1, αν πληκτρολογούμε αριθμούς σε ένα κελί, αυτοί θα αθροίζονται.
Αν πληκτρολογήσουμε κείμενο θα καταχωρηθεί, αλλάζοντας το περιεχόμενο του κελιού, χωρίς προειδοποίηση.
Αν συνεπώς σε ένα κελί που καταχωρούμε συμβάντα καταχωρήσουμε κατά λάθος κείμενο, για να μη χάσουμε τα δεδομένα θα πρέπει να ακυρώσουμε την καταχώρηση (UnDo).
Είδα στο μήνυμά σου ότι κάνεις συγχώνευση κελιών. Στη συγκεκριμένη περίπτωση δεν τη συνιστώ μπορεί να σου δημιουργήσει προβλήματα.
Φιλικά/Γιώργος