Visual Basic - Macro renomme cellule

  • Auteur de la discussion nana3851
  • Date de début

nana3851

Nouveau membre
Bonjour,

Je dois créer une macro sous visual Basic mais je ne sais absolument pas comment m'en servir.

J'ai créé un tableau dynamique sous excel et celui-ci met à jour des donnée en rajoutant des colones et des lignes, sachant que mes dernière lignes et colones sont les totaux. Les cellules des totaux sont alors renommées.
Cependant, dès qu'une mise à jour est effectuée, mes cellules renommées restent les mêmes sur les cellules initiales alors que je voudrai qu'elles restent sur les cellules des totaux qui se déplacent.

Je cherche donc une macro sur Visual Basic qui renomerais mes cellules "totaux" au fure à mesure des mises à jour.

Merci !!!!
 

Freeman23

Expert
De ce que je connais des TCD (Tableau croisé dynamique), il se base sur des données organisées comme une base de donnée. Je ne sais à quoi tes cellules nommées te servent mais j'imagine que tu t'en sert pour les afficher ailleurs.
Il existe souvent d'autre solution que l'utilisation de VBA, je vais peut être donner une fausse piste mais je connais pas l'ensemble du problème.
Donc par exemple tu peux créer un onglet avec des cellules qui calcule tes totaux par des formules et donc tu n'as plus besoin de calculer la position de tes cellules totaux de ton tableau mais tu récupères directement le résultat ailleurs. Après tu peux toujours rendre invisible cet onglet.
 

nana3851

Nouveau membre
merci pour ta réponse.

le problème c'est que je voudrais que tout soit automatique.
Il n'y aura que des mises à jour, c'est pour cela que j'utilise le TCD, car en faisant une "execution", il remet à jour les informations dans le tableau.
Effectivement par la suite je dois me reservir des totaux, c'est pour cela qu'il faut que les cellules soient renommées en fonction de ces totaux car quand il y a une mise à jour, ils se déplacent.

Je sais qu'il existe une solution sur VBA, mais je ne sais pas faire...

 

edoir

Habitué
ton deplacement de collone est il toujours le meme a chaque fois ?
Si oui tu fais une macro avec une incrementation a chaque fois que tu fais execution qui renome la case N+x en totaux ou la selection... mais il doit avoir plus simple peut etre ...
Sinon je te donne des piste d'algo a programmer
Tu sonde les cases en partant de la fin du tableau excel (tu par de la derniere casede droite) et tu revient en marche arriere jusqy'a se que ta macro detect que la case ne soit pas vide au quel cas elle l'apelle totaux


+ Edoir
 

Freeman23

Expert
Edoir, malheureusement c'est pas aussi simple avec les tableaux croisées dynamiques ceux sont des objets très spécifiques d'Excel, et c'est relou à manipuler...

Là ou je m'étonne c'est qu'il ont pour but de "mettre en forme" des données plus que de servir de base à des calculs.

Donc nana si tu pouvais donner un peu plus de détail sur ton onglet de base et ce que contient ton tableaux, le nombre de totaux utiles pour la suite.
 

edoir

Habitué
je connais pas grand chose a excel les fonctions de base

Donc je donnais des piste de reflection ;)
 

nana3851

Nouveau membre
merci pour tes solutions,

je pense que la deuxième pourrait me correspondre ! (pour la première, elle est envisageable mais si la mise à jour est n'est pas régulière, cela ne marche pas)

Pourrais tu me donner le programme correspondant à la deuxième solution ?
Sachant que le plus à droite possible je compte rennomer les cellules "totaux", il y en auraient une quinzaine, j'espère que cela ne posera pas de problème.

Merci d'avance!
 

nana3851

Nouveau membre
le problème se concrétise ainsi:

Je transfère de mon SAP des données sur excel sous forme de tableau/filtre.

Je prend les informations qui m'interesse pour les mettre dans un TCD avec a l'horizontale les mois et à la vertical, les éléments de projet selon plusieurs critères. Il y a donc des sous totaux et des totaux par élément de projet, par mois.

Ces données sont ensuite réutilisées dans un tableau synthétique.

Il faut alors qu'automatiquement, à chaque mise à jour du 1er tableau/filtre, tout le reste change sans que les cellules renommées ne bouge...

Voilà pour le problème concrêt !
 

nana3851

Nouveau membre
solution peut être trouvée... je ne passerais plus par des cellules renommées mais par un tableau prè défini qui ne change pas...

a voire !
 

edoir

Habitué
Je ne suis pas en mesure de te donné le programme car cela fait exactement une semaine que j'ai vraiment decouvert le VB donc....
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 136
Messages
6 718 117
Membres
1 586 397
Dernier membre
Chachabidou
Partager cette page
Haut