Bonjour à tous,
Je ne suis pas bête, mais pas bon en macro, et surtout pas le temps (malheureusement) pour apprendre les détails. Mais j'ai des connaissance relative a la programmation qui me permettent de ne pas être perdu, mais plus c'est détaillé, plus ça me va, (notamment pour ceux qui reprendront le travail derrière).
J'ai évidemment plusieurs problèmes, mais le principal est le premier :
CONTEXTE : Établissement d'une trame de devis (plus ou moins) automatisée, afin de remplacer la version de 2000 de ma boite, ou tout était manuel, même la recherche des prix dans la BD.
FORMAT :
- Une première feuille "DEVIS" avec la trame, en-tête et pieds de page etc... (pas la meilleure idée certes, mais c'est comme ça...) qui sera imprimée et envoyer au client.
- Une seconde "RECAP" dans lequel est listé le rang (colonne A), chaque LOT (colonne B : (fonction indirect "rang = feuille"+A2) et le prix global (colonne C) de chaque lot associé, idéalement avec un bouton en bout de chaque ligne afin d’accéder a la page voulu (c'est une demande)
- XX pages (27 maximum - sur le plus gros devis ayant été réalisé jusqu'à présent) toutes identiques (à la longueur du tableau près) constituées comme suit : en B2 le nom du lot exemple : "05 - Tuyauterie" son total en G7 puis plus bas le tableau de chiffrage
- Une page BD extraite d'un logiciel d'achat
PROBLEME 1 :
L'idée est de pouvoir renommer les XX feuilles (donc pas les deux premières ni la dernière) en sélectionnant les deux premiers caractères de la cellule B2 de chaque feuille, j'avais tenté un truc sans grand succès du genre :
Dim sh As Worksheet
sh.Name = Left(sh.Range("B2").Text, 2)
PROBLEME 2 :
La création du bouton sur la feuille 'RECAP', j'ai fais ceci qui fonctionne pas mal,
ActiveSheet.Buttons.Add([D4].Left, [D4].Top, [D4].Width, [D4].Height).Select
Selection.Characters.Text = [B4].Value
mais le bouton n'est pas cliquable (et pour cause il ne renvoie a rien) par contre il prend bien le texte. j'ai bien essayé des trucs comme
Sheets((Range("A4").Value).Select
le problème c'est que j'ai la valeur 1 en A4 alors il me renvoie à la première page du classeur a savoir "DEVIS"
Également, plutôt éviter la méthode bourrin de faire 27 macros pour les 27 boutons des 27 lignes, l'automatiser dans une boucle et rajouter le fait de ne pas faire de bouton si la cellule BXX est vide ?
Je suis tellement paumé, que la moindre idée sera la bienvenue, sur la procédure, le code, l'utilité de la manœuvre, bien que le chef ait toujours raison
En vous remerciant,
Informatiquement,
Vincent