| Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
|
#1
| |||
| |||
|
καλησπερίζω την ομάδα που τυχαία ανακάλυψα και ήδη με βοήθησε να βρω μια σημαντική λύση για ενα απ τα προβλήματα μου που αφορούν το excel.. ελπιζω να βρεθεί λυση και σε αυτο το πρόβλημα.. λυπών! εχω ενα excel με το οποιο στο πρώτο φυλλο ανεβάζω ενα αρχείο προϊόντων xml. στο δευτερο φυλλο τραβαω οσα δεδομενα χρειαζομαι για το καθε προιον που θελω μεσω αναζήτησης με τον κωδικο του προιοντος και με τη συνάρτηση vlookup και ύστερα το μετατρέπω σε csv για να ανεβεί στο σαιτ.. το πρόβλημα μου ειναι το εξης: το αρχειο xml οταν ανεβαίνει σε excel εχει μια μορφη γραμμές και στήλες (κλασικα), όμως, το καθε προιον το κανει 3-4-5 γραμμές ανάλογα με τα δεδομένα του.. δηλαδή.. το ποιοιν με κωδικο 12345 πχ στην πρωτη γραμμή εκτός των αλλων δεδομένων εμφανιζει και το λινκ τις πρώτης φωτο.. στην δεύτερη γραμμη το λινκ τις δεύτερης φωτο, στην τρίτη γραμμή το λινκ τις 3ης φωτο και παει λέγοντας.. το ιδιο ισχύει και με τα δεδομένα των φίλτρων του καθε προϊόντος.. ετσι, μπορει το ενα προϊών να ειναι και 5 και 6 γραμμές.. ο κωδικός εμφανίζετε σε ολες τις γραμμές. εγω τωρα, αν κανω αναζήτηση με τον κωδικό με την vlookup μου φέρνει μονο τα δεδομένα τις πρωτης γραμμής που βρισκει.. τι θα κανω για να μπορέσω να παρω και τα υπόλοιπα δεδομένα και απο τις αλλες γραμμές?????????? ειναι πολυ σημαντικό να το φτιάξω διοτι μου γλυτώνει άπειρες ωρες εργασίας που μπορουν να γινουν σε 1 λεπτο μετο πάτημα ενος κουμπιού!! υγ. εχω φαει απειρες ωρες ψάχνοντας για το excel και εχω καταφέρει να κανω πολλα πράγματα που με βοηθάνε στη δουλειά μου αλλα αυτο δεν το βρίσκω ![]() ευχαριστώ εκ των πρότερων |
|
#2
| ||||
| ||||
|
Καλησπέρα Σταύρο και καλωσόρισες στο φόρουμ! Δώσε μας ένα μικρό παραδειγματικό αρχείο για να δούμε ακριβώς το ζητούμενο και να σε βοηθήσουμε. Με εκτίμηση Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
|
#3
| |||
| |||
|
Καλησπερα Τασο. ανεβαζω το αρχειο που χρησιμοποιώ με 2-3 κωδικους για να το δειτε.. θα δειτε οτι ο καθε κωδικος ειναι σε περισσοτερες απο μια γραμμες και το λινκ τις καθε 2ης-3ης φώτο (πεδιο "image10") ειναι σε ξεχωριστη γραμμη, οπως και τα φιλτρα (στηλη V μεχρι AD). εγω θελω αυτα τα δεδομενα (λινκ φωτο'ς και φιλτρα) να τα παω στο διπλα φυλλο στο αντιστοιχο πεδιο Τελευταία επεξεργασία από το χρήστη Tasos : 10-04-20 στις 10:09. |
|
#4
| ||||
| ||||
|
Καλημέρα σε όλους! Σταύρο απ΄ ότι κατάλαβα θέλεις έναν πίνακα που να περιέχει τα προϊόντα μοναδικά αλλά με τις όλες τις αντιστοιχισμένες εικόνες τους. Στο παράδειγμα που επισυνάπτω και στο φύλλο "Results" υπάρχει μια λίστα που με τύπους εμφανίζει τα μοναδικά ονόματα προϊόντων. Οι στήλες ΑΝ και ΑΟ χρησιμοποιούν την παρακάτω συνάρτηση: Κώδικας: Function GetFeautureFromProduct(ProductStartRow As Long, _
ProductEntRow As Long, _
FeautureColumn As Range, _
Optional StringSeparator As String = vbLf) As String
Dim i As Integer
Dim tmp As String
For i = ProductStartRow To ProductEntRow
If FeautureColumn(i) <> vbNullString Then
tmp = tmp & FeautureColumn(i) & StringSeparator
End If
Next
If InStr(1, tmp, StringSeparator) Then
GetFeautureFromProduct = Mid(tmp, 1, Len(tmp) - 1)
End If
End Function
Η σύνταξη της συνάρτησης είναι: Κώδικας: =GetFeautureFromProduct(αρχική_γραμμή;τελική_γραμμή; στήλη_προς_αναζήτηση;προαιρετικός_διαχωριστικός_χαρακτήρας_πχ Char(10)_ή_";") Καλή συνέχεια! Φιλικά Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών Τελευταία επεξεργασία από το χρήστη Tasos : 08-04-20 στις 17:35. |
|
#5
| |||
| |||
|
Σ ευχαριστω για τον χρόνο σου, το ειδα αυτο που εφτιαξες αλλα δεν μπορω να κανω δουλεια ετσι δύστυχος. αυτο που θελω ειναι το εξεις: στο φυλλο "excel to csv" και στο κελι aq2 πχ, θελω μια συνάρτηση η οποια να βλεπει τον κωδικο στο κελι be2 και να αναζητα απ το φυλλο "xml" τον αντίστοιχο κωδικο και να μου φερνει πισω τα λινκ των φωτο που υπαρχουν για αυτον τον κωδικο απο τις στηλες q και an, διαχωρισμένα με κόμμα "," ετσι: ww.test.gr/image1,ww.test.gr/image2,ww.test.gr/image3 λογικα τον ιδιο τυπο θα χρησιμοποιησω για να κανω το ιδιο και με τα φιλτρα που θελω να φερω στο κελι af του φυλλου "excel to csv" με την διαφορά οτι τα φιλτρα ειναι στις στηλες ab και ad παλι στο φυλλο "xml"... τα φιλτρα στο κελι af πρεπει να ειναι στην ακολουθη μορφη: φιλτρο1:τιμη φιλτρου1,φιλτρο2:τιμη φιλτρου2,φιλτρο3:τιμη φιλτρου3 μαλλον δεν το εξηγησα καλα στην αρχη, ελπιζω τωρα να εγινε ποιο κατανοητό και ελπίζω να μην κουρασα...πολυ. ![]() επισεις στο φυλλο xml του αρχειου δεν μπορω να κανω καμια αλλαγη γιατι ανανεωνετε καθημερινα και ειναι καπου 100χλ. γραμμες! Τελευταία επεξεργασία από το χρήστη Tasos : 10-04-20 στις 10:08. |
|
#6
| ||||
| ||||
|
Γεια σου Σταύρο! Eπικόλλησε την παρακάτω συνάρτηση στον VBE: Κώδικας: Function GetFeautureFromProduct(ProductCode As String, _
ProductColumn As Range, _
FeautureColumn As Range, _
StringSeparator As String) _
As String
Dim iRow As Integer
Dim FirstCellValue As String
Dim tmp As String
Dim foundCell As Range
Set foundCell = ProductColumn.Find(ProductCode, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not foundCell Is Nothing Then
FirstCellValue = foundCell.Value
Do
iRow = foundCell.Row
If FeautureColumn(iRow) <> vbNullString Then
tmp = tmp & FeautureColumn(iRow) & StringSeparator
End If
Set foundCell = foundCell.Offset(1)
Loop While foundCell.Value = FirstCellValue
End If
If Len(tmp) > 0 Then
GetFeautureFromProduct = Mid(tmp, 1, Len(tmp) - Len(StringSeparator))
End If
End Function
Εάν δεν υπάρχει δυνατότητα ταξινόμησης τότε χρησιμοποίησε την παρακάτω συνάρτηση: Κώδικας: Function GetFeautureFromProduct(ProductCode As String, _
ProductColumn As Range, _
FeautureColumn As Range, _
StringSeparator As String) _
As String
Dim iRow As Integer
Dim firstAddress As String
Dim tmp As String
Dim foundCell As Range
Set foundCell = ProductColumn.Find(ProductCode, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not foundCell Is Nothing Then
firstAddress = foundCell.Address
Do
iRow = foundCell.Row
If FeautureColumn(iRow) <> vbNullString Then
tmp = tmp & FeautureColumn(iRow) & StringSeparator
End If
Set foundCell = ProductColumn.Find(ProductCode, After:=foundCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If foundCell Is Nothing Then GoTo ContinueHere
Loop While foundCell.Address <> firstAddress
End If
ContinueHere:
If Len(tmp) > 0 Then
GetFeautureFromProduct = Mid(tmp, 1, Len(tmp) - Len(StringSeparator))
End If
End Function
=GetFeautureFromProduct($BE2;xml!$B:$B;xml!$AM:$AM ;",") Έτσι, σύμφωνα πάντα με τη δομή του παραδείγματος σου, θα έχεις τις εικόνες που αντιστοιχούν σε κάθε κωδικό ενωμένες με διαχωριστικό το κόμμα (,). Με τον ίδιο τρόπο μπορείς να ενώσεις και άλλες στήλες.του φύλλου "xml". Καλή συνέχεια! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών Τελευταία επεξεργασία από το χρήστη Tasos : 08-04-20 στις 21:29. |
|
#7
| |||
| |||
|
Φιλε τασο χιλια ευχαριστω, με αυτον τον κωδικα και με κατι μικρες τροποποιησεις απο το γαμπρο μου που σκαμπαζει λιγο απο κωδικα εκανα τη δουλεια μου οπως ακριβως ηθελα! χιλια ευχαριστω και παλι!! Τελευταία επεξεργασία από το χρήστη Tasos : 10-04-20 στις 10:08. |
|
#8
| ||||
| ||||
|
Να είσαι καλά Σταύρο! Καλή συνέχεια! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| [Γενικά] Πολλαπλη αναζητηση και αντιγραφη κελιων | starcctv | Excel - Ερωτήσεις / Απαντήσεις | 9 | 24-06-19 16:08 |
| [ Πίνακες ] Πολλαπλή αντιγραφή μιάς εγγραφής στον ίδιο πίνακα | dimitrisp | Access - Ερωτήσεις / Απαντήσεις | 14 | 05-10-16 22:38 |
| [Συναρτήσεις] Αναζήτηση σε πίνακα | Γιώργος Κ. | Excel - Ερωτήσεις / Απαντήσεις | 8 | 09-11-15 23:40 |
| [VBA] VBA - Πολλαπλή Αντιγραφή ΦΥΛΛΟΥ Excel | ΕΛΕΝΙΤΣΑ | Excel - Ερωτήσεις / Απαντήσεις | 8 | 20-03-15 14:15 |
| Αναζήτηση σε πίνακα με ερώτημα | sakis | Access - Ερωτήσεις / Απαντήσεις | 2 | 09-10-14 12:20 |
Η ώρα είναι 17:47.




Αλλαγή σε γραμμικό τρόπο

