Menu

Formule et insertion colonne [Résolu]

- - Dernière réponse :  anthony - 18 nov. 2018 à 14:22
Bonjour,
J'ai un fichier excel de plusieurs feuilles construites à partir d'un modèle.
Dans chaque feuille je rajoute des données régulièrement. Aujourd'hui je rajoute les 2 nouvelles colonnes de données à la suite des précédentes (donc tout à droite).

Sauf qu'au fil du temps c'est de moins en moins pratique car il faut jouer avec la barre de déplacement.
J'aurais donc aimé pouvoir insérer les 2 nouvelles colonnes de données devant les précédentes.
Par contre j'ai une formule en colonne E et F qui me calcule la somme et le nombre de tout ce qu'il y a à partir de la colonne G.
Sauf que quand j'insère mes 2 nouvelles colonnes en G, mes formules démarrent en I. Du coup je dois reprendre chaque formule sur chaque onglet.

Auriez vous une solution pour que je puisse insérer mes nouvelles données en G et que mes formules maintiennent le point de départ en G et pas décalées de 2 colonnes à chaque insertion ?

Merci pour votre aide
Anthony
Afficher la suite 

Votre réponse

6 réponses

Messages postés
23492
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 février 2019
5624
0
Merci
Bon jour
un petit truc mais ne connaissant pas vos formules difficile de dire si cela va fonctionner ou pas:
  • insérer une colonne vide devant le tableau, et masquer là (elle deviendra G, mais ne sera pas utilisée)
  • faire démarrer les formules depuis cette nouvelle colonne G
  • insérer les nouvelles colonnes entre le tableau et la colonne masquée (à partir de la H donc)


crdlmnt


Excellente idée. J'aime son côté débrouillard et pragmatique.
Je n'ai pas accès au fichier jusqu'à jeudi. Je vous mettrai un exemple de formule.
En tous les cas c'est déjà une solution. merci
Commenter la réponse de Vaucluse
0
Merci
Bonjour,

voici mes formules :
celle ci en colonne E
=SI(SOMMEPROD(((MOD(COLONNE(G5:CB5);2)=1)*G5:CB5))=0;"";SOMMEPROD(((MOD(COLONNE(G5:CB5);2)=1)*G5:CB5)))

celle ci en colonne F
=SI(SOMMEPROD(((MOD(COLONNE(G5:CB5);2)=0)*G5:CB5))=0;"";SOMMEPROD(((MOD(COLONNE(G5:CB5);2)=0)*G5:CB5)))
Commenter la réponse de Anthony
Messages postés
23492
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 février 2019
5624
0
Merci
Bonjour
avec ce type de formule, même en gardant G vide, qui solutionne le décalage des adresses, vous ne pouvez pas garder le principe de calcul qui n'additionne que les valeurs des colonnes paires, donc se décale à chaque insertion....sauf en insérant à chaque fois deux colonnes pour conserver le code MOD

à moins que vous ayez un autre argument pour définir quelles cellules doivent être sommées
mais là, il faudrait e dire plus, voire déposer un exemple ici:
http://mon-partage.fr
et revenir coller le lien créé sur le site
Commenter la réponse de Vaucluse
0
Merci
Bonjour,

un exemple de mon fichier
https://mon-partage.fr/f/KoBJ94QH/

Merci pour le coup de main
Vaucluse
Messages postés
23492
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 février 2019
5624 -
Alors je pense que effectivement le plus simple est de créer une colonne G masquée et vide, et de modifier vos formules en E et F pour éviter de lier les résultats aux N° de colonne, mais plutôt aux titres en ligne 4
soit la formule en E5
=SOMME.SI($G$4:Y$4;$E$4;$G5:Y5)
et en F5:
=SOMME.SI($G$4:Y$4;$F$4;$G5:Y5)
attention aux positions des signes $ pour pouvoir tirer et incrémenter les formules

et à part ça, je suppose que la liste en A de cette feuille est provisoire, car les formules en B et C ne fonctionneront pas avec ça!

crdlmnt
oui c'était pour effacer les données confidentielles de la colonne A.
Par contre avec un somme.si je ne perds pas le fait de faire une colonne sur 2 ?
Vaucluse
Messages postés
23492
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 février 2019
5624 -
La somme SI se base sur le titre de colonne en ligne selon celui inscrit en E4 ou F4
soit
somme des colonnes G5 à Y5 uniquement si le titre en ligne 4 est identique à E4
somme des colonnes G5 à Y5 uniquement si le titre en ligne 4 est identique à F4
Peut importe si les colonnes sont paires ou impaires
Bien sur si vous insérer des colonnes il faut reporter aussi les titres en ligne 4
https://mon-partage.fr/f/LJ814boY/

en prime, les deux colonnes à insérer pourraient l'être en VBA via un bouton, avec mise en place des titres

crdlmnt
Commenter la réponse de Anthony
0
Merci
Bonjour,

je n'étais pas prêt de trouver cette solution ...
en tous les cas elle est logique et évite les erreurs en cas d'insertion d'une seule colonne.
Merci
Ca donnerait quoi svp le VBA pour l'insertion des colonnes et titres ?
Commenter la réponse de anthony
Messages postés
23492
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
16 février 2019
5624
0
Merci
Bonjour
ça donne ça, en cliquant sur la forme en haut à gauche
  • si votre Excel accepte les macros
  • si vous enregistrer le fichier sous un format acceptant les macros (xlsm)

https://mon-partage.fr/f/wkVZXnOi/
crdlmnt
merci beaucoup.
j'ai adapté la macro pour qu'elle prenne en compte la colonne G qui est masquée.

merci pour la qualité des solutions et la rapidité
Commenter la réponse de Vaucluse