XL pour MAC Refonte complete d'un fichier, besoin d'idées

nobodyuse

XLDnaute Occasionnel
Bonjour à toutes et tous

Après quelques temps de travail sur un fichier de suivi de commande d'articles pour des agents d'une entreprise reparties sur 3 sites différents
je me retrouve avec un fichier final fonctionnel, mais très lourd (26Mo pour les 5 années) ce qui rend mon fichier très lent

Tout d'abord je précise que je suis archi novice !
Je viens donc vers vous les pro du Excel afin de quérir quelques idées pour refaire mon entièrement mon fichier de manière a ce qu'il soit moins lourd et utilisable sur serveur d'entreprise par 3 personnes minimum (1 sur chaque site)

je vous expose donc le projet:

j'ai une base de donnée qui doit contenir les différents articles possible, pour lesquels il y a un prix unitaire, différentes tailles possible,
dans cette base de données il y a également une base de Nom/prénom, chef référent, leur site, et la somme qui leur ai attribué au 1er janvier 2020 (repris des années précédentes) il y a pour l’heure quelques 300 agents environs... Mais comme cela peut évoluer (départ en retraite, embauche, ...) il faut donc que ce fichier soit évolutif facilement
il me faut donc un système qui aille cherche les noms, en fonction du nom son chef, que 'l’on sépare les 3 sites si cela est possible...
il y a 3 commande par année civile (Janvier, Mai et Septembre)
il faut que l'on puisse rentrer leur éléments de commande avec des liste deroulantes (Articles, taille, quantité, Prix Unitaire) que ce soit calculé automatiquement et déduit de leur somme initiale
Évidemment chaque fois la somme est reporté sur la feuille de suivi de commande suivants (3 par année) une feuille de Bilan est ajouté pour la fin d'année et permet de voir le nombre d'articles commandé par agents et les totaux par sites (et total global) une feuille de suivi peux éventuellement être inséré ce qui permettrai d'avoir un archivage de ce qui a été commandé .... (si l'on pouvais même réussir a trier par articles et taille de manière a avoir une forme "d’état de la commande" ce serai top pour voir et suivre d'un coup d'oeil les quantités qu'il y a à commander et en quels tailles)
j'avais ajouté une fonction de Statut de remise a l'agent avec la date automatique (qui permet de suivre un peu savoir ou l'on en est)
Afin de réduire la taille du fichier sur chaque page de bilan j'ai inséré une macro qui permet de transformer le résultat des formules en données brutes et supprimer les feuilles de Janvier, Mai et Sept de l'année qui viens de s’écouler, afin de ne pouvoir garder que la feuille de bilan et reprendre la somme en fin d'année sur la nouvelles feuille de Janvier (Auquel on crédite chaque année la somme de 40€ cumulable d'une année sur l'autre sans jamais dépasser un montant de 120€)


je ne peux pas vous mettre le fichier que j'ai créer (Car trop gros même zippé)
je vous met cela dit des captures d'écrans une de la feuille de Janvier, une de la feuille bilan et une du type de feuille de suivi possible (qui pourrai remplacer la feuille de bilan (à voir)
je sais ce n'est pas top mais c'est vraiment pour donner une idée de ce que j'avais fait jusque la, mais comme cela ne vas pas forcement ....

Merci d'avoir pris le temps de lire jusqu'au bout en espérant avoir réussi a être assez clair
D'avance merci à tous

Feuille actuel de Janvier:
Capture d’écran 2021-03-26 à 17.55.11.png



Feuille actuel de bilan:
Capture d’écran 2021-03-26 à 17.55.36.png




Idée de feuille de suivi a voir:
Capture d’écran 2021-03-26 à 18.00.18.png


Autre tentative de mise en forme:
Capture d’écran 2021-03-26 à 18.15.07.png


D'avance Merci à tous
 
Dernière édition:
Solution
Re

Pour rester Kissien ;)
J'ai simplifié la précédente macro
VB:
Sub Archivage()
Application.ScreenUpdating = False
Dim arrINap As Range, arrIN, arrOUT(), i&, n&, k&, j%
arrINa = Array([D3], [D5], [D7], [D9], [D11], [D13])
Set p = Range("F3:I13"): arrIN = p: k = UBound(arrIN, 1)
For i = 1 To k
For j = 1 To 4
If Trim(arrIN(i, j)) <> vbNullString Then
If Trim(arrIN(i, j)) > 0 Then
n = n + 1
ReDim Preserve arrOUT(1 To 2, 1 To n)
arrOUT(1, n) = arrIN(i, j)
End If
End If
Next j
Next i
Feuil2.Cells(Rows.Count, 1).End(3)(2).Resize(, UBound(arrINa, 1) + 1) = arrINa
Feuil2.Cells(Rows.Count, 7).End(3)(2).Resize(, n) = arrOUT
End Sub

Staple1600

XLDnaute Barbatruc
Re

=>nobodyuse
[De passage, pour infos]
Ce n'est pas une question de choix
Mais d'"obligation"
L'Europe¸ reprise par la charte d'XLD à dit:
1 - Conformité RGPD
Tout message ou fichier déposé sur ce site ne doit pas comporter de données à caractère personnel (DCP).
Il convient d’anonymiser toutes les données permettant d’identifier directement ou indirectement une personne.
XLD ne saurait être tenu responsable au cas où un visiteur du site posterait des données non conformes à la législation en vigueur.
Si vous détectez une non conformité, merci d'alerter le webmaster de ce site :
Et pour infos Bis, la charte a évolué depuis la mise à jour du forum
(voir le dernier paragraphe de ce point:
=> 11 - Autres points d'attention
[/De passage, pour infos]
 

nobodyuse

XLDnaute Occasionnel
Re

=>nobodyuse
[De passage, pour infos]
Ce n'est pas une question de choix
Mais d'"obligation"

Et pour infos Bis, la charte a évolué depuis la mise à jour du forum
(voir le dernier paragraphe de ce point:
=> 11 - Autres points d'attention
[/De passage, pour infos]
Ah Zut, Merci Staple
je comprend faut que je m’attèle a cela
en espérant que Sylvanu a pu récupérer le fichier que je vais donc de ce pas supprimer
le temps de refaire une version anonymisé (Ce qui prendra donc un peu de temps)
 

nobodyuse

XLDnaute Occasionnel

Staple1600

XLDnaute Barbatruc
Re

=>nobodyuse
Tu étais trop dans ton truc pour avoir lu tout le message#31
(notamment la fin, ou je cause du point 11) ;)
Alors je le mets ici en clair
la charte¸ mise à jour¸ à dit:
Les problèmes liés à la fourniture de liens vers des fichiers téléchargeables en dehors du forum sont les suivants : les liens expirent souvent après une certaine durée, de nombreux utilisateurs ne peuvent pas télécharger de fichiers à partir de sites de partage de fichiers en raison de restrictions de sécurité réseau, de nombreux utilisateurs hésitent à télécharger des fichiers pour des raisons de sécurité personnelle et les fonctionnalités de recherche du forum ne fonctionnent pas.
Sinon, tu n'as pas répondu à la question du message#34.
 

nobodyuse

XLDnaute Occasionnel
Re

=>nobodyuse
Tu étais trop dans ton truc pour avoir lu tout le message#31
(notamment la fin, ou je cause du point 11) ;)
Alors je le mets ici en clair

Sinon, tu n'as pas répondu à la question du message#34.
Si j’ai bien lu le Point11 de la charte mais vu la situation je n’ai pas d’autre choix que de mettre sur un truc genre Cjoint

en effet je n’ai pas tester la macro du #34 je pensai que c’était ce dont vous parliez dans le #33
 

Staple1600

XLDnaute Barbatruc
Re

=>sylvanu
J'ai fini par réussir à l'ouvrir
Et là je viens de cliquer sur: Activer la modification
Donc c'est reparti pour un tour (avant de pouvoir accéder au fichier)

=>Erwan
Tu n'as suivi aucun conseil
Tu as laissé les formats, les couleurs, les bordures.
Il fallait virer tout cela pour alléger le fichier.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
Le problème est que c'est justement tous les formats, les couleurs, les bordures le problème.
C'est pour ça je pense que le fichier atteint les 26Mo et qu'il rame à mort.
Pour info, sur la première PJ j'ai pu calculer via le VBA qu'une feuille ne fait que 392 lignes sur 11 colonnes.
Un des deux problèmes de Nobodyuse est de le faire maigrir, mais pour cela il faut pouvoir l'ouvrir. 😢
 

Statistiques des forums

Discussions
315 098
Messages
2 116 193
Membres
112 679
dernier inscrit
Yupanki