Copie cellule sur autre onglet

Bonjour

Je m'auto forme en VBA et après avoir regardé plusieurs vidéos je ne parviens pas à faire ce que je veux.

Objectif : Je souhaiterai que les éléments du tableau de la feuille Tabelle1 s'incrémentent dans le nouvel onglet qui se crée (grâce à ma macro ci-dessous) aux bons endroits.

Parallèlement à cela je voudrais que lorsqu'on mentionne dans la inputbox le numéro du problème, les éléments de la ligne de ce même numéro (qui apparaît dans la colonne A de Tabelle1) se mettent dans le nouvel onglet aux bons endroits.

J'ai déjà fait une macro qui fonctionne pour qu'à chaque fois que je lance la macro un nouvel onglet (trame Escalade) se crée avec le nom donné dans l'inputbox.

Voici le code qui fonctionne pour le moment :

Sub dupliquer()

Dim numEscalade As String
numEscalade = InputBox("Numéro du problème Escalade ?") 'faire apparaitre une box avec quel est le ° escalade'
If numEscalade = "" Then 'si vide fermer'
Exit Sub
End If

Sheets("Escalade").copy after:=Sheets(Sheets.Count) 'veut dire : copie la feuille "Escalade" et on la met à la fin de toutes les autres feuilles'
ActiveSheet.Name = numEscalade 'à chaque nouvelle feuille lui donner le nom XX'

J'ai nommé toutes mes cellules :

gestionnaire de noms

et ai essayé la fonction

Range (libelle_source).copy range (libelle)

mais ça ne fonctionne pas ...

Voici le fichier

6forum.xlsm (23.63 Ko)

Pourriez-vous m'aider ?!

Merci ++

Bonjour

Je ne réponds pas encore à votre question parce qu'en voyant le fichier, j'éviterais au max les cellules fusionnées dans votre feuille Modèle. J'ai modifié cette feuille.

Voyez si cela convient avant d'aller plus loin

cordialement

5forum.xlsm (19.83 Ko)

Bonjour @+Dan et merci de vous pencher sur le sujet

Oui cela me convient, ce que je souhaite c'est pouvoir générer un PDF sur une page à la fin

Donc si visuellement la trame reste identique OK pour moi !

Cordialement.

J'ai encore un peu adapté la feuille Modèle pour les fusions de colonnes

Votre fichier en retour pour test. Le bouton est placé sur la feuille Tabelle1 et exécute la macro Dupliquer qui crée la feuille puis importe les données

11forum-v2.xlsm (21.32 Ko)

Cordialement

Merci !!!!! @+ Dan

C'est super, je vais essayer de travailler ma mise en forme pour mes logos etc.

Ok. Toutefois, modifiez cette partie de code comme ceci

If numEscalade = "" Then Exit Sub 'si vide fermer'
On Error Resume Next
Lig = Feuil1.ListObjects("Tableau1").ListColumns(1).DataBodyRange.Find(numEscalade, LookIn:=xlValues, lookat:=xlWhole).Row
If Lig > 0 Then

Puis juste avant le END SUB, rajoutez --> END IF

Cela va éviter un bug si vous entrez un numéro d'escalade inexistant

@+ Dan
Ca fonctionne
merci !

OK.

Dans vos définitions de noms, vous pouvez tout supprimer sauf Tableau1 qui est la référence utilisée dans le code. Cela allègera le fichier

Rechercher des sujets similaires à "copie onglet"