Choix feuille selon valeur cellule

bonjour

je souhaiterais copier les valeurs des cellules selon la valeur de la cellule E3

SI E3=SIE copier dans tableau de suivi SIE et si E3=CAR dans tableau de suivi CAR

24fiche-inter.xlsm (54.54 Ko)

Salut et bienvenue sur le Forum,

Dans le fichier ci-joint, ta macro Private Sub BtnCopier_Click() modifiée et simplifiée.

Je pense que tu pourrais encore supprimer tous les .Value, mais je n'ai pas testé.

Cordialement.

41fiche-inter-v1.xlsm (57.01 Ko)

merci deja pour ton aide

est il possible que si un N° est deja sur une feuille on demande de refaire une nouvelle fiche

Re,

Dans ta macro d'origine, il y avait un contrôle des numéros de fiches existants et - sans trop étudier la chose - j'ai remarqué que ça fonctionnait encore.

Maintenant que tu poses ta question, je me rends compte que ça fonctionne apparemment uniquement si le numéro à double est le dernier inscrit et uniquement pour la feuille concernée (SIE ou CAR).

Peux-tu alors me préciser ton souhait : il ne peut y avoir deux fois le même numéro de fiche, que ce soit sur l’une ou l’autre feuille, c’est bien cela ??

A te relire.

Oui c'est bien cela car je pense rajouter d'autre feuilles

Idem si la E3 est vide messge choisir demandeur

voici ma solution je ne sais pas si on peu faire autrement mais ça fonctionne

Code :

With Sheets("Demande de travaux")

If .Range("T2").Value <> .Range("V2").Value Then

OD.Range("A" & lign + 1).Value = .Range("T2").Value

OD.Range("B" & lign + 1).Value = .Range("K4").Value

OD.Range("C" & lign + 1).Value = .Range("K43").Value

OD.Range("D" & lign + 1).Value = .Range("E3").Value

OD.Range("E" & lign + 1).Value = .Range("K3").Value

OD.Range("F" & lign + 1).Value = .Range("R3").Value

OD.Range("G" & lign + 1).Value = .Range("E4").Value

OD.Range("H" & lign + 1).Value = .Range("R4").Value

OD.Range("I" & lign + 1).Value = .Range("A21").Value

OD.Range("J" & lign + 1).Value = .Range("A35").Value

OD.Range("K" & lign + 1).Value = .Range("M19").Value

OD.Range("L" & lign + 1).Value = .Range("S19").Value

.Range("V2").Value = .Range("T2").Value

Else: MsgBox "Le N° de Fiche deja utilisé-creer nouvelle fiche avant !"

Je suis en train de travailler sur ce code.

Je continue ou tu t'en occupes ?

A te relire.

tu peu regarder si tu trouve une autre solution, pour le moment celle ci fonctionne.

par contre je recherche comment sauvegarder juste la fiche d'intervention ,avec si SIE donc on sauvegarde dans un dossier a définir sous SIE ET LE N° DE LA FICHE, si on choisi CAR et bien CAR et N° fiche

Tu as demandé que le contrôle si une fiche est déjà présente soit effectué sur toutes les feuilles. Je ne vois pas comment ton code peut réaliser cela.

Peux-tu me fournir une fichier dans lequel se trouve ta macro ?

Merci

Voici le fichier

21fiche-inter-v5.xlsm (66.42 Ko)

Salut,

Tu a dû modifier ton fichier afin d’arriver à ton résultat et si quelqu’un indique un ancien numéro en T2, ton code n’y voit que du feu. De plus, dans ton premier exemple, les numéros des fiches ne se suivaient pas sur les feuilles annexes

Pour respecter l’orthographe, j’ai écrit le titre des feuilles « Tableau de suivi ….. » en majuscule. Comme mon code est probablement sensible à la casse, si tu ajoutes d’autres feuilles, elles devraient absolument commencé de la même manière.

Comme j’ai prévu mon code, tu ne devrais pas ajouter à ce fichier d’autres feuilles que des feuilles « Tableau de suivi ….. », à moins d’adapter le code en conséquence.

Et, comme tu l’as demandé, si un numéro de fiche est déjà utilisé – sur n’importe quelle feuille « Tableau de suivi ….. », tu reçois un message d’erreur.

Ca ne sert à rien que je continue à travailler sur tes fichiers si tu fais le même boulot en parallèle. Alors, tu as encore besoin d’aide pour la suite ou non ?

A te relire.

14fiche-inter-v2.xlsm (57.48 Ko)

oui pour la sauvegarde de la fiche d'intervention dans un dossier par exemple c:\intervention\(avec nom du fichier et n°)

pour le moment je bloque , je suis tout nouveau sur vba , je picore un peu partout pour réussir a sortir quelque chose


je viens de tester ton fichier j'ai une erreur de compilation and if sans bloc if ??????

Pour mon dernier fichier, j'avais fait une dernière correction sans tester. Désolé. Voici le fichier corrigé.

Pour ton autre problème je regarde d'ici la fin du week-end.

Cordialement.

Merci d'avance je regarde le fichier des que je rentre chez moi

Salut,

Voici les nouveautés du fichier ci-joint :

A) A chaque fois que tu cliques sur le bouton ‘Copier’, une sauvegarde de la feuille ‘Demande de travaux’ est enregistrée – en plus de ce que faisait déjà la macro ‘BtnCopier_Click’ – dans un nouveau fichier au nom du numéro de la fiche et dans le dossier du bon service.

Comme a été prévue la macro, les dossiers des services doivent être placés en tant que sous-dossiers du dossier dans lequel se trouve le fichier de base. S’ils n’existent pas lorsque c’est nécessaire, ces sous-dossiers sont alors créés automatiquement. En d’autres mots, si tu rajoutes une feuille ‘Tableau de suivi Xxxx’ et que tu crées une nouvelle fiche pour ce service, le sous-dossier ‘Xxxx’ sera automatiquement créé.

B) A chaque fois que tu cliques sur le même bouton, le numéro en T2 est incrémenté de 1.

A te relire.

15fiche-inter-v3.xlsm (62.87 Ko)

cela a l air de fonctionner , par contre est il possible d'enregistrer la feuille sans les macro cad sans les bouton sauvegarder que la partie zone imprimable .

de plus si SIE selectionner enregistrer sous (fiche intervention SIE N°"" )

deja un grand merci

bon pour la dénomination c'est OK j'ai trouvé

ActiveWorkbook.SaveAs Filename:=Chemin & "\" & Nom_nouveau_dossier & "\" & "Fiche intervention" & Range("E3") & Range("T2") & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled

reste juste le choix de la fiche seulement

Salut,

Je reste tellement émerveillé des possibilités d’Excel que je pensais que tu aurais partagé mon enthousiasme sur la réalisation du dernier code fourni et que tu réagirais un peu mieux que par ta simple réflexion ci-dessous

cisco38 a écrit :

cela a l air de fonctionner

Pour ta dénomination, il me semble qu’il manque quand même quelques espaces. J’en ai placé dans le fichier ci-joint.

Dans le fichier ci-joint, j’ai également transformé le code de manière à ce que les boutons des macros soient supprimés sur les copies créées.

Bonnes salutations.

24fiche-inter-v4.xlsm (63.56 Ko)

je partage ton enthousiasme sur la réalisation du dernier code fourni , je suis nouveau sur VBA excel, et je te remerci de toute l'aide que tu m'apporte.

sur le fichier v4, ça a fonctionne une fois la suppression des boutons ensuite c'est comme avant on a toute la feuille avec les boutons

je ne sais pas si c'est faisable , mais bon tu connait plus que moi excel

on considère que l'on choisi toutes les cellules de la partie zone imprimable , on les copie sur une autre feuille et on enregistre avec le N° etc .des que c'est enregistrer message" feuille enregistrer" et on ferme automatiquement celle ci et on revient a la feuille demande de travaux

cisco38 a écrit :

sur le fichier v4, ça a fonctionne une fois la suppression des boutons ensuite c'est comme avant on a toute la feuille avec les boutons

Avec le fichier que je t'ai envoyé, si tu appuies 20 fois sur ton bouton 'Copier', tu auras 20 nouveaux dossiers nommés par exemple 'Fiche intervention AUTRES 32' sans boutons.

As-tu transposé ma macro dans un autre fichier ?

cisco38 a écrit :

on considère que l'on choisi toutes les cellules de la partie zone imprimable , on les copie sur une autre feuille et on enregistre avec le N° etc .des que c'est enregistrer message" feuille enregistrer" et on ferme automatiquement celle ci et on revient a la feuille demande de travaux

Tu m’expliques quelque chose par ces phrases ou tu me poses une question ?

A te relire.

Rechercher des sujets similaires à "choix feuille valeur"