Note: The other languages of the website are Google-translated. Back to English

Πώς να vlookup για να επιστρέψετε πολλές τιμές σε ένα κελί στο Excel;

Κανονικά, στο Excel, όταν χρησιμοποιείτε τη συνάρτηση VLOOKUP, εάν υπάρχουν πολλές τιμές που ταιριάζουν με τα κριτήρια, μπορείτε να πάρετε την πρώτη. Αλλά, μερικές φορές, θέλετε να επιστρέψετε όλες τις αντίστοιχες τιμές που πληρούν τα κριτήρια σε ένα κελί, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης, πώς μπορείτε να το λύσετε;

Vlookup για επιστροφή πολλαπλών τιμών σε ένα κελί με τη συνάρτηση TEXTJOIN (Excel 2019 και Office 365)

Vlookup για την επιστροφή πολλαπλών τιμών σε ένα κελί με συνάρτηση καθορισμένη από το χρήστη

Vlookup για να επιστρέψετε πολλές τιμές σε ένα κελί με μια χρήσιμη λειτουργία


Vlookup για επιστροφή πολλαπλών τιμών σε ένα κελί με τη συνάρτηση TEXTJOIN (Excel 2019 και Office 365)

Εάν έχετε την υψηλότερη έκδοση του Excel όπως το Excel 2019 και το Office 365, υπάρχει μια νέα λειτουργία - ΚΕΙΜΕΝΟ, με αυτήν την ισχυρή λειτουργία, μπορείτε να δείτε γρήγορα και να επιστρέψετε όλες τις αντίστοιχες τιμές σε ένα κελί.

Vlookup για να επιστρέψετε όλες τις αντίστοιχες τιμές σε ένα κελί

Εφαρμόστε τον παρακάτω τύπο σε ένα κενό κελί όπου θέλετε να βάλετε το αποτέλεσμα και, στη συνέχεια, πατήστε Ctrl + Shift + Εισαγωγή πλήκτρα μαζί για να λάβετε το πρώτο αποτέλεσμα και, στη συνέχεια, σύρετε τη λαβή πλήρωσης προς τα κάτω στο κελί που θέλετε να χρησιμοποιήσετε αυτόν τον τύπο και θα λάβετε όλες τις αντίστοιχες τιμές όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:

=TEXTJOIN(",",TRUE,IF($A$2:$A$11=E2,$C$2:$C$11,""))

Σημείωση: Στον παραπάνω τύπο, A2: A11 είναι το εύρος αναζήτησης περιέχει τα δεδομένα αναζήτησης, E2 είναι η τιμή αναζήτησης, C2: C11 είναι το εύρος δεδομένων από το οποίο θέλετε να επιστρέψετε τις αντίστοιχες τιμές, ",είναι ο διαχωριστής για τον διαχωρισμό των πολλαπλών εγγραφών.

Vlookup για να επιστρέψετε όλες τις αντίστοιχες τιμές χωρίς διπλότυπα σε ένα κελί

Εάν θέλετε να επιστρέψετε όλες τις αντίστοιχες τιμές με βάση τα δεδομένα αναζήτησης χωρίς διπλότυπα, ο παρακάτω τύπος μπορεί να σας βοηθήσει.

Αντιγράψτε και επικολλήστε τον ακόλουθο τύπο σε ένα κενό κελί και, στη συνέχεια, πατήστε Ctrl + Shift + Εισαγωγή πλήκτρα μαζί για να λάβετε το πρώτο αποτέλεσμα και, στη συνέχεια, αντιγράψτε αυτόν τον τύπο για να γεμίσετε άλλα κελιά και θα λάβετε όλες τις αντίστοιχες τιμές χωρίς τις διπλές, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:

=TEXTJOIN(",", TRUE, IF(IFERROR(MATCH($C$2:$C$11, IF(E2=$A$2:$A$11, $C$2:$C$11, ""), 0),"")=MATCH(ROW($C$2:$C$11), ROW($C$2:$C$11)), $C$2:$C$11, ""))

Σημείωση: Στον παραπάνω τύπο, A2: A11 είναι το εύρος αναζήτησης περιέχει τα δεδομένα αναζήτησης, E2 είναι η τιμή αναζήτησης, C2: C11 είναι το εύρος δεδομένων από το οποίο θέλετε να επιστρέψετε τις αντίστοιχες τιμές, ",είναι ο διαχωριστής για τον διαχωρισμό των πολλαπλών εγγραφών.

Vlookup για την επιστροφή πολλαπλών τιμών σε ένα κελί με συνάρτηση καθορισμένη από το χρήστη

Η παραπάνω συνάρτηση TEXTJOIN είναι διαθέσιμη μόνο για το Excel 2019 και το Office 365, εάν έχετε άλλες χαμηλότερες εκδόσεις του Excel, θα πρέπει να χρησιμοποιήσετε ορισμένους κωδικούς για την ολοκλήρωση αυτής της εργασίας.

Vlookup για να επιστρέψετε όλες τις αντίστοιχες τιμές σε ένα κελί

1. Κρατήστε πατημένο το ALT + F11 και ανοίγει το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Παράθυρο ενότητας.

Κωδικός VBA: Vlookup για επιστροφή πολλαπλών τιμών σε ένα κελί

Function ConcatenateIf(CriteriaRange As Range, Condition As Variant, ConcatenateRange As Range, Optional Separator As String = ",") As Variant
'Updateby Extendoffice
Dim xResult As String
On Error Resume Next
If CriteriaRange.Count <> ConcatenateRange.Count Then
    ConcatenateIf = CVErr(xlErrRef)
    Exit Function
End If
For i = 1 To CriteriaRange.Count
    If CriteriaRange.Cells(i).Value = Condition Then
        xResult = xResult & Separator & ConcatenateRange.Cells(i).Value
    End If
Next i
If xResult <> "" Then
    xResult = VBA.Mid(xResult, VBA.Len(Separator) + 1)
End If
ConcatenateIf = xResult
Exit Function
End Function

3. Στη συνέχεια, αποθηκεύστε και κλείστε αυτόν τον κωδικό, επιστρέψτε στο φύλλο εργασίας και εισαγάγετε αυτόν τον τύπο: =CONCATENATEIF($A$2:$A$11, E2, $C$2:$C$11, ", ") σε ένα συγκεκριμένο κενό κελί όπου θέλετε να τοποθετήσετε το αποτέλεσμα και, στη συνέχεια, σύρετε τη λαβή πλήρωσης προς τα κάτω για να λάβετε όλες τις αντίστοιχες τιμές σε ένα κελί που θέλετε, δείτε το στιγμιότυπο οθόνης:

Σημείωση: Στον παραπάνω τύπο, A2: A11 είναι το εύρος αναζήτησης περιέχει τα δεδομένα αναζήτησης, E2 είναι η τιμή αναζήτησης, C2: C11 είναι το εύρος δεδομένων από το οποίο θέλετε να επιστρέψετε τις αντίστοιχες τιμές, ",είναι ο διαχωριστής για τον διαχωρισμό των πολλαπλών εγγραφών.

Vlookup για να επιστρέψετε όλες τις αντίστοιχες τιμές χωρίς διπλότυπα σε ένα κελί

Για να αγνοήσετε τα αντίγραφα στις επιστρεφόμενες τιμές αντιστοίχισης, κάντε τον παρακάτω κωδικό.

1. Κρατήστε πατημένο το Alt + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Παράθυρο ενότητας.

Κωδικός VBA: Vlookup και επιστροφή πολλαπλών μοναδικών αντιστοιχισμένων τιμών σε ένα κελί

Function MultipleLookupNoRept(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer)
'Updateby Extendoffice
    Dim xDic As New Dictionary
    Dim xRows As Long
    Dim xStr As String
    Dim i As Long
    On Error Resume Next
    xRows = LookupRange.Rows.Count
    For i = 1 To xRows
        If LookupRange.Columns(1).Cells(i).Value = Lookupvalue Then
            xDic.Add LookupRange.Columns(ColumnNumber).Cells(i).Value, ""
        End If
    Next
    xStr = ""
    MultipleLookupNoRept = xStr
    If xDic.Count > 0 Then
        For i = 0 To xDic.Count - 1
            xStr = xStr & xDic.Keys(i) & ","
        Next
        MultipleLookupNoRept = Left(xStr, Len(xStr) - 1)
    End If
End Function

3. Αφού εισαγάγετε τον κωδικό, κάντε κλικ στο Εργαλεία > αναφορές στο άνοιξε Microsoft Visual Basic για εφαρμογές παράθυρο, και στη συνέχεια, στο αναδυόμενο Αναφορές - VBAProject πλαίσιο διαλόγου, επιλέξτε Χρόνος εκτέλεσης δέσμης ενεργειών Microsoft επιλογή του Διαθέσιμες αναφορές πλαίσιο λίστας, δείτε στιγμιότυπα οθόνης:

4. Στη συνέχεια κάντε κλικ στο κουμπί OK για να κλείσετε το παράθυρο διαλόγου, να αποθηκεύσετε και να κλείσετε το παράθυρο κώδικα, να επιστρέψετε στο φύλλο εργασίας και να εισαγάγετε αυτόν τον τύπο: =MultipleLookupNoRept(E2,$A$2:$C$11,3) into a blank cell where you want to output the result, and then drag the fill hanlde down to get all matching values, see screenshot:

Σημείωση: Στον παραπάνω τύπο, Α2: Γ11 είναι το εύρος δεδομένων που θέλετε να χρησιμοποιήσετε, E2 είναι η τιμή αναζήτησης, ο αριθμός 3 είναι ο αριθμός στήλης που περιέχει τις επιστρεφόμενες τιμές.

Vlookup για να επιστρέψετε πολλές τιμές σε ένα κελί με μια χρήσιμη λειτουργία

 Εάν έχετε το δικό μας Kutools για Excel, Με τους Σύνθετες σειρές συνδυασμού δυνατότητα, μπορείτε να συγχωνεύσετε ή να συνδυάσετε γρήγορα τις σειρές με βάση την ίδια τιμή και να κάνετε μερικούς υπολογισμούς όπως χρειάζεστε.

Σημείωση:Για να το εφαρμόσετε Σύνθετες σειρές συνδυασμού, πρώτα, πρέπει να κατεβάσετε το Kutools για Excelκαι, στη συνέχεια, εφαρμόστε τη λειτουργία γρήγορα και εύκολα.

Μετά την εγκατάσταση Kutools για Excel, κάντε τα εξής:

1. Επιλέξτε το εύρος δεδομένων που θέλετε να συνδυάσετε δεδομένα μιας στήλης με βάση μια άλλη στήλη.

2. Κλίκ Kutools > Συγχώνευση & διαχωρισμός > Σύνθετες σειρές συνδυασμού, δείτε το στιγμιότυπο οθόνης:

3. Στο αναδυόμενο Σύνθετες σειρές συνδυασμού κουτί διαλόγου:

  • Κάντε κλικ στο όνομα της στήλης κλειδιού που θα συνδυαστεί βάσει και, στη συνέχεια, κάντε κλικ στο Πρωτεύων κλειδί
  • Στη συνέχεια, κάντε κλικ σε μια άλλη στήλη που θέλετε να συνδυάσετε τα δεδομένα της με βάση τη στήλη κλειδιού και κάντε κλικ στο Συνδυασμός για να επιλέξετε ένα διαχωριστικό για το διαχωρισμό των συνδυασμένων δεδομένων.

4. Στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί και θα λάβετε τα ακόλουθα αποτελέσματα:

Κατεβάστε και δωρεάν δοκιμή Kutools για Excel τώρα!


Σχετικά άρθρα:

  • Λειτουργία VLOOKUP με ορισμένα βασικά και προηγμένα παραδείγματα
  • Στο Excel, η συνάρτηση VLOOKUP είναι μια ισχυρή συνάρτηση για τους περισσότερους χρήστες του Excel, η οποία χρησιμοποιείται για να αναζητήσει μια τιμή στο αριστερότερο εύρος δεδομένων και να επιστρέψει μια αντίστοιχη τιμή στην ίδια σειρά από μια στήλη που καθορίσατε. Αυτό το σεμινάριο μιλά για τον τρόπο χρήσης της λειτουργίας VLOOKUP με ορισμένα βασικά και προηγμένα παραδείγματα στο Excel.
  • Επιστρέψτε πολλές τιμές αντιστοίχισης με βάση ένα ή περισσότερα κριτήρια
  • Κανονικά, αναζητήστε μια συγκεκριμένη τιμή και επιστρέψτε το αντίστοιχο στοιχείο είναι εύκολο για τους περισσότερους από εμάς χρησιμοποιώντας τη λειτουργία VLOOKUP. Ωστόσο, έχετε προσπαθήσει ποτέ να επιστρέψετε πολλές τιμές αντιστοίχισης με βάση ένα ή περισσότερα κριτήρια; Σε αυτό το άρθρο, θα παρουσιάσω ορισμένους τύπους για την επίλυση αυτής της σύνθετης εργασίας στο Excel.
  • Vlookup και επιστροφή πολλαπλών τιμών κάθετα
  • Κανονικά, μπορείτε να χρησιμοποιήσετε τη συνάρτηση Vlookup για να λάβετε την πρώτη αντίστοιχη τιμή, αλλά, μερικές φορές, θέλετε να επιστρέψετε όλες τις εγγραφές που ταιριάζουν με βάση ένα συγκεκριμένο κριτήριο. Αυτό το άρθρο, θα μιλήσω για το πώς να βλέπω και να επιστρέφω όλες τις αντίστοιχες τιμές κάθετα, οριζόντια ή σε ένα μόνο κελί.
  • Vlookup και επιστροφή πολλαπλών τιμών από την αναπτυσσόμενη λίστα
  • Στο Excel, πώς θα μπορούσατε να δείτε και να επιστρέψετε πολλές αντίστοιχες τιμές από μια αναπτυσσόμενη λίστα, πράγμα που σημαίνει ότι όταν επιλέγετε ένα στοιχείο από την αναπτυσσόμενη λίστα, όλες οι σχετικές τιμές εμφανίζονται ταυτόχρονα. Αυτό το άρθρο, θα παρουσιάσω τη λύση βήμα προς βήμα.

Τα καλύτερα εργαλεία παραγωγικότητας του Office

Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%

  • Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
  • Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
  • Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
  • Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
  • Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
  • Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
  • Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
  • Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
  • Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2021 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.
kte καρτέλα 201905

Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
κάτω μέρος γραφείου
Σχόλια (43)
Δεν υπάρχουν ακόμη βαθμολογίες. Γίνε ο πρώτος που θα αξιολογήσετε!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Πώς θα προσαρμόσω αυτόν τον τύπο για να διαχωρίσω κάθε επιστρεφόμενη τιμή αλλά ", " καθώς και να επιστρέφω μόνο μοναδικές τιμές;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ευχαριστώ για τον κωδικό!!

Όσον αφορά τους χαρακτήρες μπαλαντέρ, η χρήση του INSTR είναι μια εναλλακτική λύση

Μπορείτε να αντικαταστήσετε το [ Αν rng = pValue Τότε ] με το [ InStr(1, rng.Value, pValue) Τότε ] και αν δεν θέλετε να γίνεται διάκριση πεζών-κεφαλαίων, χρησιμοποιήστε το [ InStr(1, rng.Value, pValue, vbTextCompare) Στη συνέχεια ]
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ευχαριστώ για τον παραπάνω κώδικα VBA. Μπορείτε να μου πείτε πώς να κάνω τα αποτελέσματα να εισάγονται σε μια νέα γραμμή στο κελί, π.χ. Alt-Enter 300 400 1000 1300
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Σας ευχαριστούμε που μοιραστήκατε τον παραπάνω κώδικα. Το χρησιμοποιώ εδώ και αρκετούς μήνες αλλά σήμερα δεν φαίνεται να λειτουργεί. Λαμβάνω κενά κελιά αντί για το συνηθισμένο σφάλμα όταν υπάρχουν δεδομένα προς επιστροφή. Καμία ιδέα;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Καταπληκτική δουλειά.. Πήρα ακριβώς αυτό που θέλω!!! Το λατρεύω !!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια, είμαι πραγματικά εντυπωσιασμένος με την εργασία και είναι τόσο εύκολο να δημιουργήσω ένα για να χρησιμοποιήσω αυτήν τη λειτουργία. ωστόσο χρειάζομαι περαιτέρω υποστήριξη. Το δικό μου; είναι πώς μπορώ να επιλέξω έναν αριθμό από ένα κελί με πολλά κελιά στον πίνακα vlookup μου. δηλ. Αν κελί A1 = 100, A2 = 350, A3 = 69 C1 = 100; 1222; 12133 C2 = 69; 222 D1 = Apple D2 = μπανάνα Λοιπόν, πώς μπορώ να επιλέξω 100 από τη στήλη C του πίνακα πινάκων μου για να εξαγάγω την αντίστοιχη D1 = apple Παρακαλώ σημειώστε ότι έχω 7 ψηφίους αριθμούς στην τιμή αναζήτησης και τον πίνακα πίνακα που διαχωρίζεται με ένα ";". Θα εκτιμούσα πραγματικά αν μπορείτε να το λύσετε και να με βοηθήσετε να εξοικονομήσω πολύ χρόνο.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ευχαριστούμε για τον κωδικό VBA. Πήρα ακριβώς αυτό που θέλω! Τροποποίησα μόνο τον κωδικό " rng.Offset(0, pIndex - 1) " σε " rng.Offset(0, pIndex - 2) " . Έτσι το MYVLOOKUP μπορεί να κάνει αναζήτηση από τα δεξιά προς τα αριστερά.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Αυτό ακριβώς έψαχνα και δεν σκέφτηκα να φτιάξω απλώς το δικό μου UDF. Ωστόσο, δεν θα λειτουργεί ακριβώς όπως το VLOOKUP. Εάν η συμβολοσειρά που αναζητάτε δεν βρίσκεται μόνο στην πρώτη στήλη, τότε θα μπορούσε να σας δώσει δεδομένα εκτός του αρχικού εύρους που περάσατε. Όνομα Αριθμός Άλλο όνομα Στήλη που δεν βρίσκεται εντός εύρους πέρασε Jay 1 Jay 1 Jay 2 Jay 2 Chris 3 Chris 3 Jorge 4 Jorge 4 Jay 5 Jay 5 Jorge 6 Jorge 6 Εάν ο παραπάνω πίνακας ήταν κελιά A1:D7 αν περάσατε μόνο A1:C7 Η συνάρτηση "MYVLOOKUP" επιστρέφει 1 1 2 2 5 5 όταν θα περιμένατε να επιστρέψει 1 2 5. Οι παρακάτω αλλαγές διορθώνουν το πρόβλημα: Συνάρτηση MYVLOOKUP(pValue As String, pWorkRng As Range, pIndex As Long) 'Update 20150310'U /6/9 Jay Coltrain 'Dim rng As Range Dim xResult As String xResult = "" Dim Rows As Long, i As Long Rows = pWorkRng.Rows.Count For i = 16 To Rows If pWorkRng.Cells(i, 1). Τιμή = pValue Τότε xResult = xResult & " " & pWorkRng.Cells(i, 1).Offset(1, pIndex - 0) End If Next i 'For Every rng In pWorkRng ' If rng = pValue Τότε ' xResult = xResult & " " & rng.Offset(1, pIndex - 0) ' End If 'Next MYVLOOKUP = xResult End Function
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Αυτό λειτουργεί άψογα, αλλά χρειάζομαι βοήθεια με την εντολή αφαίρεσης διπλότυπων από τα αποτελέσματα. Σοβαρά πάντως, εξαιρετική δουλειά.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Αυτό λειτουργεί άψογα, αλλά χρειάζομαι ακόμα βοήθεια με τη συνάρτηση εντολών για την κατάργηση των διπλότυπων από τα αποτελέσματα.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ενημερώστε με για τα επόμενα σχόλια
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Επιστροφή τίποτα! μετά την εφαρμογή του MYLOOKUP χωρίς αποτέλεσμα αλλά κενό.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια, Λειτουργεί καλά. Αυτό που θα ήθελα να κάνω είναι να προσαρμόσω τον κώδικα για να διαχωρίσετε τα αποτελέσματα των τιμών με "///" ή οποιονδήποτε άλλο δείκτη (για τεχνικούς λόγους, δεν θέλω μόνο ένα διαχωριστικό χαρακτήρων). Επίσης, παρατήρησα ότι αυτός ο τύπος δεν λειτουργεί με μπαλαντέρ. Ξέρω ότι ζητάω πάρα πολλά, αλλά δεν λειτουργεί καθώς το vlookup μπορεί να λειτουργήσει όταν αναζητώ =myvlookup("*"&E6&"*",$A$2:$C$15,2) που θα έκανε/θα μπορούσε να κάνει. Οποιαδήποτε βοήθεια;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Τα κεφάλια-πάνω. Κατάλαβα πώς μπορώ να βρω οποιοδήποτε διαχωριστικό σε αυτή την έξοδο. Το υποτυπώδες του. Αλλά το κατάλαβα. xResult = xResult & "///" & rng.Offset(0, pIndex - 1) Το τελευταίο και πιο επιθυμητό πράγμα όμως είναι να του επιτραπεί να λειτουργεί με χαρακτήρες μπαλαντέρ στα κριτήρια αναζήτησης. Σας ευχαριστώ και πάλι για αυτήν την όμορφη και λαμπρή λύση. Εξαιρετικά εξυπηρετικό. Τώρα απλώς θέλω να βάλω τη μακροεντολή να εκτελεστεί και να εγκατασταθεί στο excel μου μόνιμα, ανεξάρτητα από το τι κάνω, ώστε να μπορώ να τη χρησιμοποιήσω όταν χρειαστεί. Και μπαλαντέρ! Σε ευχαριστώ πάρα πολύ. Οι μπαλαντέρ είναι το μόνο που μένει να κάνουμε.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Για να λάβετε μοναδική εγγραφή, μπορείτε να χρησιμοποιήσετε παρακάτω: (τροποποιήθηκε από τον κωδικό άλλου χρήστη) Λειτουργία MYVLOOKUP(pValue As String, pWorkRng As Range, pIndex As Long) 'Update 20150310 'Update 6/9/16 Jay Coltrain 'Dim rng As Range Dim xResult ως συμβολοσειρά xResult = "" Dim σειρές όσο, i As Long Rows = pWorkRng.Rows.Count για i = 1 σε γραμμές εάν pWorkRng.Cells(i, 1).Value = pValue Τότε xResult = xResult & "," & pWorkRng.Cells(i, 1).Offset(0, pIndex - 1) End If Next i Dim varSection As Variant Dim sTemp As String Dim sDelimiter As String sDelimiter = "," Για κάθε varSection In Split(xResult, sDelimiter) InStr(1, sDelimiter & sTemp & sDelimiter, sDelimiter & varSection & sDelimiter, vbTextCompare) = 0 Κατόπιν sTemp = sTemp & sDelimiter & varSection End If Next varSection MYVLOOKUP = Les)(Delimiter)
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Αυτό λειτούργησε τέλεια, αλλά μου πήρε λίγο χρόνο για να λειτουργήσει σωστά η Συνάρτηση στο υπολογιστικό φύλλο 20 καρτελών, 50k+ γραμμής μου. Τώρα το ΜΕΓΑΛΟ ερώτημα είναι πώς να λάβετε αυτήν την οριοθετημένη συμβολοσειρά και στη συνέχεια να χρησιμοποιήσετε κάθε καταχώρηση ως τιμή αναζήτησης Index/Match (όχι με το Index/Match, αλλά φαίνεται πιο γρήγορο) σε ένα άλλο σύνολο δεδομένων, επιστρέφοντας την τιμή SUM όλων των επιστροφών σε ένα κελί . Το σενάριό μου είναι ότι έχω μια Ενιαία Παραγγελία που έχει πολλαπλά τιμολόγια. Η λειτουργία MYVLOOKUP λειτουργεί άψογα για να αναφέρει όλα τα τιμολόγια σε ένα κελί. Αυτό που θέλω να κάνω τώρα είναι να παίρνω κάθε συνδυασμένη επιστροφή με το αναφερόμενο κελί, να περιστρέφω αυτόν τον πίνακα και να αθροίζω τα ποσά πληρωμής κάθε τιμολογίου πίσω στο κελί του τύπου. Εκτιμώ κάθε βοήθεια που μπορείτε να προσφέρετε σε αυτό και σας ευχαριστώ για τη Λειτουργία MYVLOOKUP!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ό,τι και να κάνω, πάντα παίρνω #αξία! επέστρεψε αντί για αποτέλεσμα. Το vlookup λειτουργεί μια χαρά, επομένως τα δεδομένα λειτουργούν. Ακολούθησε ήδη τη διαδικασία ενεργοποίησης μακροεντολών. Συνδύασα τα πάντα σε ένα μόνο φύλλο. Καμιά ιδέα??
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Εξαιρετική μακροεντολή, χρήσιμη. Αλλά πρέπει να ξέρετε ότι μπορεί να τροποποιηθεί για να ελέγξετε 2 κριτήρια και να βρει κάποιος ούτως ή άλλως να κάνει τους χαρακτήρες μπαλαντέρ να λειτουργούν σε αυτό. Κάποια βοήθεια;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Υπάρχει τρόπος να τροποποιηθεί το αποτέλεσμα, ώστε αντί να δείχνει 1000 1000 -1000 θα δείχνει για παράδειγμα 1,000/1,000/(1,000) ;
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Φοβερή λειτουργία, όσο και αν το κομματάκι μέσα από 100,000 εγγραφές αποδεικνύεται πολύ καλό για τον φτωχό φορητό υπολογιστή μου, θα πρέπει να τον αφήσω να λειτουργήσει όλη τη νύχτα!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Αυτό είναι καταπληκτικό, ευχαριστώ!
Δεν υπάρχουν σχόλια δημοσιεύτηκε ακόμα
Τοποθετήστε Περισσότερα
Αφήστε τα σχόλιά σας
Δημοσίευση ως επισκέπτης
×
Αξιολογήστε αυτήν την ανάρτηση:
0   Χαρακτήρες
Προτεινόμενες τοποθεσίες

Ακολουθησε μας

Πνευματικά δικαιώματα © 2009 - www.extendoffice.com. | Ολα τα δικαιώματα διατηρούνται. Τροφοδοτείται από ExtendOffice. | Sitemap
Το Microsoft και το λογότυπο του Office είναι εμπορικά σήματα ή σήματα κατατεθέντα της Microsoft Corporation στις Ηνωμένες Πολιτείες ή / και σε άλλες χώρες.
Προστατεύεται από το Sectigo SSL