Πώς να αποτρέψετε την αντιγραφή και επικόλληση σε κελί με αναπτυσσόμενη λίστα στο Excel;
Για ένα κελί με αναπτυσσόμενη λίστα επικύρωσης δεδομένων, όταν αντιγράφετε περιεχόμενο από άλλο κελί και επικολλάτε σε αυτό, η αναπτυσσόμενη λίστα θα φύγει και θα αντικατασταθεί με το νέο περιεχόμενο επικόλλησης. Σε ορισμένες περιπτώσεις, θέλετε να αποτρέψετε την αντιγραφή και επικόλληση άλλου περιεχομένου πάνω από το κελί με την αναπτυσσόμενη λίστα, τι θα κάνατε για να το αντιμετωπίσετε; Σε αυτό το άρθρο, θα λάβετε μια μέθοδο VBA για την αντιμετώπιση αυτού του προβλήματος.
Αποτροπή αντιγραφής και επικόλλησης σε κελί με αναπτυσσόμενη λίστα στο Excel
Αποτροπή αντιγραφής και επικόλλησης σε κελί με αναπτυσσόμενη λίστα στο Excel
1. Ανοίξτε το φύλλο εργασίας με το αναπτυσσόμενο κελί λίστας που θέλετε να αποτρέψετε την αντιγραφή και επικόλληση.
2. Τύπος άλλος + F11 ταυτόχρονα για να ανοίξετε το Εφαρμογές της Microsoft Visual Basic παράθυρο.
3. Στο Εφαρμογές της Microsoft Visual Basic παράθυρο, κάντε διπλό κλικ στο όνομα του τρέχοντος φύλλου εργασίας στο αριστερό παράθυρο και, στη συνέχεια, αντιγράψτε και επικολλήστε τον παρακάτω κώδικα VBA στον επεξεργαστή κώδικα. Δείτε το στιγμιότυπο οθόνης:
Κωδικός VBA: Αποτροπή αντιγραφής και επικόλλησης σε κελί με αναπτυσσόμενη λίστα
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20200903
Dim xValue As String
Dim xCheck1 As String
Dim xCheck2 As String
Dim xRg As Range
Dim xArrCheck1() As String
Dim xArrCheck2() As String
Dim xArrValue()
Dim xCount, xJ As Integer
Dim xBol As Boolean
' If Target.Count > 1 Then
' Exit Sub
' End If
xCount = Target.Count
ReDim xArrCheck1(1 To xCount)
ReDim xArrCheck2(1 To xCount)
ReDim xArrValue(1 To xCount)
Application.EnableEvents = False
On Error Resume Next
xJ = 1
For Each xRg In Target
xArrValue(xJ) = xRg.Value
xArrCheck1(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
Application.Undo
xJ = 1
For Each xRg In Target
xArrCheck2(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
xBol = False
For xJ = 1 To xCount
If xArrCheck2(xJ) <> xArrCheck1(xJ) Then
xBol = True
Exit For
End If
Next
If xBol Then
MsgBox "The selected cells containg data validation drop-down lists, no pasting allowed."
Else
xJ = 1
For Each xRg In Target
xRg.Value = xArrValue(xJ)
xJ = xJ + 1
Next
End If
Application.EnableEvents = True
End Sub
4. Τύπος άλλος + Q πλήκτρα για έξοδο από το Εφαρμογές της Microsoft Visual Basic παράθυρο.
5. Όταν επικολλάτε περιεχόμενο σε ένα κελί με αναπτυσσόμενη λίστα, θα εμφανιστεί ένα παράθυρο διαλόγου για να σας υπενθυμίσει ότι δεν επιτρέπεται η επικόλληση. Δείτε το στιγμιότυπο οθόνης:
Note: Αυτό το VBA λειτουργεί μόνο σε επικόλληση με ένα κελί. Εάν αντιγράψετε και επικολλήσετε σε πολλά κελιά, δεν θα λειτουργήσει.
Δημιουργήστε εύκολα αναπτυσσόμενη λίστα με πλαίσια ελέγχου στο Excel:
Η Αναπτυσσόμενη λίστα με πλαίσια ελέγχου χρησιμότητα του Kutools για Excel μπορεί να σας βοηθήσει να δημιουργήσετε εύκολα αναπτυσσόμενη λίστα με πλαίσια ελέγχου σε ένα καθορισμένο εύρος, τρέχον φύλλο εργασίας, τρέχον βιβλίο εργασίας ή όλα τα ανοιχτά βιβλία εργασίας με βάση τις ανάγκες σας.
Πραγματοποιήστε λήψη του πλήρους χαρακτηριστικού 30 ημερών δωρεάν διαδρομής του Kutools για Excel τώρα!
Σχετικά άρθρα:
Πώς να δημιουργήσετε αναπτυσσόμενη λίστα με πολλά πλαίσια ελέγχου στο Excel;
Πολλοί χρήστες του Excel τείνουν να δημιουργούν αναπτυσσόμενη λίστα με πολλαπλά πλαίσια ελέγχου για να επιλέγουν πολλά στοιχεία από τη λίστα ανά φορά. Στην πραγματικότητα, δεν μπορείτε να δημιουργήσετε μια λίστα με πολλά πλαίσια ελέγχου με επικύρωση δεδομένων. Σε αυτό το σεμινάριο, θα σας δείξουμε δύο μεθόδους για να δημιουργήσετε αναπτυσσόμενη λίστα με πολλά πλαίσια ελέγχου στο Excel. Αυτό το σεμινάριο παρέχει τη μέθοδο για την επίλυση του προβλήματος.
Δημιουργήστε αναπτυσσόμενη λίστα από άλλο βιβλίο εργασίας στο Excel
Είναι πολύ εύκολο να δημιουργήσετε μια αναπτυσσόμενη λίστα επικύρωσης δεδομένων μεταξύ των φύλλων εργασίας σε ένα βιβλίο εργασίας. Αλλά αν τα δεδομένα της λίστας που χρειάζεστε για την επικύρωση δεδομένων εντοπίζονται σε άλλο βιβλίο εργασίας, τι θα κάνατε; Σε αυτό το σεμινάριο, θα μάθετε πώς μπορείτε να δημιουργήσετε μια αναπτυσσόμενη λίστα από άλλο βιβλίο εργασίας στο Excel λεπτομερώς.
Δημιουργήστε μια αναπτυσσόμενη λίστα με δυνατότητα αναζήτησης στο Excel
Για μια αναπτυσσόμενη λίστα με πολλές τιμές, η εύρεση μιας κατάλληλης δεν είναι εύκολη δουλειά. Προηγουμένως έχουμε εισαγάγει μια μέθοδο αυτόματης συμπλήρωσης της αναπτυσσόμενης λίστας κατά την εισαγωγή του πρώτου γράμματος στο αναπτυσσόμενο πλαίσιο. Εκτός από τη λειτουργία αυτόματης συμπλήρωσης, μπορείτε επίσης να κάνετε αναζήτηση στην αναπτυσσόμενη λίστα για ενίσχυση της αποτελεσματικότητας λειτουργίας στην εύρεση κατάλληλων τιμών στην αναπτυσσόμενη λίστα. Για να κάνετε αναζήτηση στην αναπτυσσόμενη λίστα, δοκιμάστε τη μέθοδο σε αυτό το σεμινάριο.
Αυτόματη συμπλήρωση άλλων κελιών κατά την επιλογή τιμών στην αναπτυσσόμενη λίστα του Excel
Ας υποθέσουμε ότι έχετε δημιουργήσει μια αναπτυσσόμενη λίστα με βάση τις τιμές στην περιοχή κελιών B8: B14. Όταν επιλέγετε οποιαδήποτε τιμή στην αναπτυσσόμενη λίστα, θέλετε οι αντίστοιχες τιμές στην περιοχή κελιών C8: C14 να συμπληρώνονται αυτόματα σε ένα επιλεγμένο κελί. Για την επίλυση του προβλήματος, οι μέθοδοι σε αυτό το σεμινάριο θα σας βοηθήσουν.
Τα καλύτερα εργαλεία παραγωγικότητας γραφείου
Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου. Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...
Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη
- Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
- Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
- Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!