ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [Συναρτήσεις] Σύγκριση 2 στηλών με δεδομένα και μεταφορά σε άλλο φύλλο

Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 14-06-16, 14:11
Όνομα: Τάσος
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 07-01-2014
Μηνύματα: 9
Προεπιλογή Σύγκριση 2 στηλών με δεδομένα και μεταφορά σε άλλο φύλλο

Καλησπέρα σας,
θα ήθελα μια βοήθεια στην εξής απορία:
έχω σε μια στήλη κωδικούς, πχ στην Α, στην Β έχω ποσότητα αλλά όχι σε όλους τους κωδικούς.
Πως μπορώ να πάρω σε νέο φύλλο μόνο τους κωδικούς που έχουν ποσότητα αλλά και την ποσότητα;
Σας στέλνω ένα αρχείο, στο φύλλο1 έχω κωδικούς και ποσότητα, στο φύλλο2 προσπάθησα να πάρω τους κωδ που έχουν ποσότητα χρησιμοποιώντας IF αλλά δεν τα κατάφερα.
Αν υπάρχει καμία ιδέα για βοήθεια.
Ευχαριστώ πολύ
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsx Βιβλίο1.xlsx (12,4 KB, 32 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 15-06-16, 05:34
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Καλημέρα.
Μια λύση, με κώδικα.
Ξεκαθάρισμα και μεταφορά 30.000 εγγραφών σε 3,58 sec
---------------------------------------------------------------------------------------
Σε μια module, αντιγράφουμε τον κώδικα:
Κώδικας:
Sub RelocateValues()
    Dim i As Long, Lr1 As Long, Nr2 As Long
    'Ορισμός τελευταίας γραμμής φύλλου εκκίνησης
    Lr1 = Sh1.Cells(Rows.Count, 1).End(xlUp).Row
    'Απενεργοποίηση οθόνης
    Application.ScreenUpdating = False
    'Καθαρισμός προορισμού
    Sh2.Range("a2:b" & Rows.Count).ClearContents
    'Μεταφορά (αν υπάρχει κεφαλίδα i = 2, άλλως i = 1)
    For i = 2 To Lr1
        'Ορισμός τελευταίας γραμμής φύλλου προορισμού
        Nr2 = Sh2.Cells(Rows.Count, 1).End(xlUp).Row + 1
        'Συνθήκη μεταφοράς (όχι κενά - barcode με 8 χαρακτήρες)
        If Sh1.Cells(i, 1).Value <> vbNullString And _
           Len(Sh1.Cells(i, 1)) = 8 And _
           Sh1.Cells(i, 2).Value <> vbNullString Then
            'Μεταφορά τιμών - μορφοποίηση προορισμού
            Sh2.Cells(Nr2, 1).NumberFormat = "@"
            Sh2.Cells(Nr2, 1).Value = Sh1.Cells(i, 1).Value
            Sh2.Cells(Nr2, 2).NumberFormat = "###0"
            Sh2.Cells(Nr2, 2).Value = Sh1.Cells(i, 2).Value
        End If

    Next i
    'Επαναφορά οθόνης
    Application.ScreenUpdating = True
    Exit Sub
End Sub
Τι θα κάνει:
Θα μεταφερθούν, όλοι οι σωστοί κωδικοί (κελιά χωρίς κενά και μήκος 8 χαρακτήρες)
που έχουν στο δεξί κελί τιμή.
Ο barcode θα μεταφερθεί ως text.

Σημειώσεις:
1. Όπου sh1 το κωδικό όνομα του φύλλου εκκίνησης.
2. Όπου sh2 το κωδικό όνομα του φύλλου προορισμού.
3. Αν ο barcode έχει περισσότερους - λιγότερους από 8 χαρακτήρες,
αλλάξτε την γραμμή:
Len(Sh1.Cells(i, 1)) = 8
4. Αν χρειαστεί (ανάλογα με το περιεχόμενο της 2ης στήλης) αλλάξτε:
Μορφοποίηση Sh2.Cells(Nr2, 2).NumberFormat = "###0"
5. Αν η στήλη κωδικών, είναι <> από την 1η (Α) αλλάξτε το 1, όπου χρειαστεί πχ
Sh2.Cells(Nr2, 1).Value = Sh1.Cells(i, 1).Value
6. Αν η στήλη τιμών, είναι <> από την 2η (Β) αλλάξτε το 2, όπου χρειαστεί πχ
Sh2.Cells(Nr2, 2).Value = Sh1.Cells(i, 2).Value
*Όμοια τα a και b πχ
Sh2.Range("a2:b" & Rows.Count).ClearContents
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[VBA] Μεταφορά δεδομένων σε άλλο φύλλο Χρήστος Excel - Ερωτήσεις / Απαντήσεις 1 14-10-16 11:43
[Excel07] Μηνιαίος πίνακας πωλήσεων με δεδομένα από άλλο φύλλο mantarinia Excel - Ερωτήσεις / Απαντήσεις 12 12-04-15 21:52
[Γενικά] Ταξινόμηση από μεταφορά σε άλλο φύλλο xristos Excel - Ερωτήσεις / Απαντήσεις 0 19-12-14 11:43
[Excel07] Μεταφορά δεδομένων σε άλλο φύλλο rania1984 Excel - Ερωτήσεις / Απαντήσεις 3 25-09-14 13:17
[Συναρτήσεις] Μεταφορά δεδομένων σε άλλο φύλλο xristos Excel - Ερωτήσεις / Απαντήσεις 16 01-11-11 07:21


Η ώρα είναι 20:12.