bonjour chris et merci déjà pour ce retourBonjour
Exemple peu clair : il faudrait saisir quelques lignes dans automatisation pour comprendre quelles données on utilise
As-tu la possibilité de télécharger et installer l'add on PowerQuery (intégré ensuite à Excel à partir de la version 2016) ?
Ce type de choses est très facile à faire avec
0600753941614 | 2446 | TYPO3 |
0600753941614 | 2452 | TYPO3 |
0600753941614 | 2845 | TYPO3 |
Sub Worksheet_Activate()
Dim Bleu, Jaune, Couleur, NbPropal%, NbIdt%, MatIdt, Ligne%, Npropal%, i%, DL%, EAN$, Formule$
'Formule = =INDEX(PROPAL!$A$1:$ZZ$1000;EQUIV(A2;PROPAL!$A$1:$A$1000;0);EQUIV(C2;PROPAL!$A$2:$ZZ$2;0)) En français
Formule = "=INDEX(PROPAL!R1C1:R1000C702,MATCH(RC[-3],PROPAL!R1C1:R1000C1,0),MATCH(RC[-1],PROPAL!R2C1:R2C702,0))"
Bleu = RGB(200, 255, 255): Jaune = RGB(255, 255, 200): Couleur = Jaune ' Def des couleurs
Sheets("automatisation").[A2:D10000].ClearContents ' Effacement précedent
Sheets("automatisation").[A2:D10000].Interior.Color = vbWhite ' Effacement couleurs
NbPropal = Sheets("Propal").Cells(Cells.Rows.Count, "A").End(xlUp).Row - 2 ' Nombre de propal
NbIdt = Sheets("MAGS").Cells(Cells.Rows.Count, "A").End(xlUp).Row ' Nombre d'IDT
MatIdt = Sheets("MAGS").Range("B3:D" & NbIdt) ' Tranfert données ds array
Ligne = 2
For Npropal = 1 To NbPropal ' Pour toute propal
EAN = Sheets("Propal").Cells(Npropal + 2, "A") ' Extraction EAN
For i = 1 To UBound(MatIdt) ' Pour toute l'array
MatIdt(i, 1) = "'" & CStr(EAN) ' On rajoute l'EAN (chaine)
Next i
' On écrit le tableau EAN, et on le met en couleur (alternée bleu/jaune)
Sheets("automatisation").Cells(Ligne, "A").Resize(UBound(MatIdt, 1), UBound(MatIdt, 2)) = MatIdt
If Couleur = Jaune Then Couleur = Bleu Else Couleur = Jaune
Range("A" & Ligne & ":D" & Ligne + UBound(MatIdt) - 1).Interior.Color = Couleur
Ligne = Ligne + UBound(MatIdt)
Next Npropal
DL = Cells(Cells.Rows.Count, "A").End(xlUp).Row ' Dernière ligne de la feuille
Range("D2:D" & DL).Formula = Formule ' On met la formule de calcul Implantation
Range("D2:D" & DL) = Range("D2:D" & DL).Value ' Copie colle des valeurs
End Sub
Bon nombre d'équipes IT refusent tout add on. Ils sont un peu parano car c'est ouvrir une boite de Pandore et n'ont nulle envie de prendre le risque. On peut en faire des hoses avec des add on, y compris des choses dangereuses si non maitrisées.Une entreprise qui travaille avec une version datant de 13 ans devrait au moins accepter les add on
oui vous avez raison - bonne nouvelle j'ai powerquery - comment fait-on 1ère fois pour moi !RE
Voici ce que j'obtiens avec PowerQuery
Il y a un écart de 1 sur
0600753941614 2446 TYPO3 0600753941614 2452 TYPO3 0600753941614 2845 TYPO3
soit je n'ai pas compris la règle, soit il y a une erreur sur l'exemple
Je ne connais pas Analyser
PowerQuery est un requêteur.
Une entreprise qui travaille avec une version datant de 13 ans devrait au moins accepter les add on qui existaient déjà à cette époque et qui sont maintenant partie intégrante d'Excel...
Les versions non supportées peuvent aussi couter très cher et le temps perdus à fabriquer des fonctionnalités devenues natives, plus encore@chris,
Savez vous combien d'entreprises travaillent encore avec 2007, 2010 ou 2013 ?
Quand l'entreprise est grande et le parc PC important l'invest est non négligeable.
En bas, pour quelques utilisateurs : Ce serait sympa d'avoir la dernière version !
En haut : C'est combien l'invest ? Et le retour sur investissement ? Euh ... Bon, pour plus tard !
REcomment fait-on 1ère fois pour moi !
Vous prêchez un convaincu.Les versions non supportées peuvent aussi couter très cher et le temps perdus à fabriquer des fonctionnalités devenues natives, plus encore
J'ai bossé dans une multinationale qui avait 10 ans de retard en Excel mais payait le support à Microsoft (pas gratuit) et il y avait nombre d'erreurs dans les classeurs dus au format xls incapable de prendre correctement en charge les 30 langues utilisées et ces erreurs entraînaient des coûts importants...
Un add on fourni par Microsoft est plus sûr que tout code VBA récupéré sur un forum...