Feuille modèle
Résolu/Fermé
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
-
14 sept. 2013 à 09:24
touroul Messages postés 472 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 19 octobre 2024 - 24 sept. 2013 à 21:41
touroul Messages postés 472 Date d'inscription mardi 5 octobre 2010 Statut Membre Dernière intervention 19 octobre 2024 - 24 sept. 2013 à 21:41
A voir également:
- Feuille modèle
- Modèle organigramme word - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Comment supprimer une feuille sur word - Guide
- Modèle de webcam - Guide
- Feuille a5 - Guide
16 réponses
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
523
14 sept. 2013 à 09:54
14 sept. 2013 à 09:54
Bonjour,
Avant tout, tu peux te demander si tu utilises la bonne manière pour obtenir le résultat recherché. Il vaudrait peut-être mieux que tu disposes d'un masque pour l'affichage des données et d'une base de données.
https://www.cjoint.com/?CIoj1G7MmvN
A+
Avant tout, tu peux te demander si tu utilises la bonne manière pour obtenir le résultat recherché. Il vaudrait peut-être mieux que tu disposes d'un masque pour l'affichage des données et d'une base de données.
https://www.cjoint.com/?CIoj1G7MmvN
A+
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
Modifié par touroul le 14/09/2013 à 11:18
Modifié par touroul le 14/09/2013 à 11:18
Merci Gyrus pour ton travail.
En réalité, c'est assez éloigné de l'objectif.
Je ne cherche pas à récupérer des données dans plusieurs feuilles, mais à appliquer une mise en forme particulière à ma feuille Masque, avec répercussion immédiate sur toutes les feuilles basées sur Modèle.
Exemple dans une macro qui ressemblerait à ça :
Feuille "Chris ANTHEM" : masque="Modèle"
Feuille "Marc EURITHE" : masque="Modèle"
Feuille "Anne HEMMONNE" : masque="Modèle"
Si : Insertion Ligne entre L5 et L6 sur Modèle
Alors : Insertion Ligne entre L5 et L6 sur toutes les feuilles ayant pour masque "Modèle".
Si : Caractère gras en E18 sur Modèle
Alors : Caractère gras en E18 sur toutes les feuilles ayant pour masque "Modèle".
Est-ce faisable ?
Merci d'avance !
En réalité, c'est assez éloigné de l'objectif.
Je ne cherche pas à récupérer des données dans plusieurs feuilles, mais à appliquer une mise en forme particulière à ma feuille Masque, avec répercussion immédiate sur toutes les feuilles basées sur Modèle.
Exemple dans une macro qui ressemblerait à ça :
Feuille "Chris ANTHEM" : masque="Modèle"
Feuille "Marc EURITHE" : masque="Modèle"
Feuille "Anne HEMMONNE" : masque="Modèle"
Si : Insertion Ligne entre L5 et L6 sur Modèle
Alors : Insertion Ligne entre L5 et L6 sur toutes les feuilles ayant pour masque "Modèle".
Si : Caractère gras en E18 sur Modèle
Alors : Caractère gras en E18 sur toutes les feuilles ayant pour masque "Modèle".
Est-ce faisable ?
Merci d'avance !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
14 sept. 2013 à 12:08
14 sept. 2013 à 12:08
Bonjour,
à tester :
à tester :
Sub formaterFeuille()eric
Dim sh As Worksheet
For Each sh In Worksheets
If InStr("Accueil,Masque", sh.Name) = 0 Then
Worksheets("Masque").Cells.Copy
sh.[A1].PasteSpecial Paste:=xlPasteFormats
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths
End If
Next sh
End Sub
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
Modifié par touroul le 14/09/2013 à 12:42
Modifié par touroul le 14/09/2013 à 12:42
Bonjour Eric !
Les meilleurs s'y mettent ...
Malheureusement aucun effet sur mes feuilles.
J'essaie de comprendre le code (que j'ai collé dans ThisWorkBook) :
Sub formaterFeuille() 'nom de la macro
Dim sh As Worksheet 'sélection des feuilles
For Each sh In Worksheets 'pour toutes les feuilles contenant "sh"
If InStr("Masque", sh.Name) = 0 Then 'si on fait des modifs dans Masque
Worksheets("Masque").Cells.Copy 'on copie Masque dans le Presse-papiers
sh.[A1].PasteSpecial Paste:=xlPasteFormats 'on colle les formats dans les feuilles contenant "sh"
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths 'on colle la même largeur de colonne dans les feuilles contenant "sh"
End If
Next sh
End Sub
C'est plutôt bien parti pourtant. où ça cloche ? Merci d'avance !
Les meilleurs s'y mettent ...
Malheureusement aucun effet sur mes feuilles.
J'essaie de comprendre le code (que j'ai collé dans ThisWorkBook) :
Sub formaterFeuille() 'nom de la macro
Dim sh As Worksheet 'sélection des feuilles
For Each sh In Worksheets 'pour toutes les feuilles contenant "sh"
If InStr("Masque", sh.Name) = 0 Then 'si on fait des modifs dans Masque
Worksheets("Masque").Cells.Copy 'on copie Masque dans le Presse-papiers
sh.[A1].PasteSpecial Paste:=xlPasteFormats 'on colle les formats dans les feuilles contenant "sh"
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths 'on colle la même largeur de colonne dans les feuilles contenant "sh"
End If
Next sh
End Sub
C'est plutôt bien parti pourtant. où ça cloche ? Merci d'avance !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
14 sept. 2013 à 13:56
14 sept. 2013 à 13:56
En fait je viens de voir que ça fonctionne partiellement :
Mais je dois faire Alt+F8 et exécuter la macro qui est dans ThisWorkBook.
Comment automatiser la tâche dès qu'il y a une modif dans Masque ?
Merci !
Mais je dois faire Alt+F8 et exécuter la macro qui est dans ThisWorkBook.
Comment automatiser la tâche dès qu'il y a une modif dans Masque ?
Merci !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
14 sept. 2013 à 15:42
14 sept. 2013 à 15:42
En fait je viens de voir que ça fonctionne partiellement :
Mais je dois faire Alt+F8 et exécuter la macro qui est dans ThisWorkBook.
Comment automatiser la tâche dès qu'il y a une modif dans Masque ?
Pourquoi la mettre dans Thisworkbook ? Pas d'intérêt.
Sinon un changement de format n'est pas un évènement, il faudra toujours la lancer. Tu peux toujours mettre un bouton sur la feuille.
eric
Mais je dois faire Alt+F8 et exécuter la macro qui est dans ThisWorkBook.
Comment automatiser la tâche dès qu'il y a une modif dans Masque ?
Pourquoi la mettre dans Thisworkbook ? Pas d'intérêt.
Sinon un changement de format n'est pas un évènement, il faudra toujours la lancer. Tu peux toujours mettre un bouton sur la feuille.
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
Modifié par touroul le 15/09/2013 à 09:19
Modifié par touroul le 15/09/2013 à 09:19
Bonjour Eric et les autres
J'ai passé pas mal de temps sur ta macro, Eric.
C'est tout à fait ce que je voulais et me fera gagner beaucoup de temps.
Par contre j'ai un petit bug noté "Erreur d'exécution '1004' : "La méthode Activate de la classe Range a échoué".
Il semble qu'il y ait une incompatibilité entre 2 macros du classeur : la tienne et :
Option Explicit
Private Sub Workbook_Open() ' ouverture du fichier sur le 1er onglet
Sheets(1).Activate
[A1].Activate
End Sub
Private Sub Workbook_SheetActivate(ByVal sh As Object) 'ouverture de chaque feuille en A1
sh.[A1].Activate
End Sub
Le bug concerne l'ouverture de chaque feuille en A1.
Puis-je vous demander s'il y a une solution ?
Merci d'avance et bon dimanche !
J'ai passé pas mal de temps sur ta macro, Eric.
C'est tout à fait ce que je voulais et me fera gagner beaucoup de temps.
Par contre j'ai un petit bug noté "Erreur d'exécution '1004' : "La méthode Activate de la classe Range a échoué".
Il semble qu'il y ait une incompatibilité entre 2 macros du classeur : la tienne et :
Option Explicit
Private Sub Workbook_Open() ' ouverture du fichier sur le 1er onglet
Sheets(1).Activate
[A1].Activate
End Sub
Private Sub Workbook_SheetActivate(ByVal sh As Object) 'ouverture de chaque feuille en A1
sh.[A1].Activate
End Sub
Le bug concerne l'ouverture de chaque feuille en A1.
Puis-je vous demander s'il y a une solution ?
Merci d'avance et bon dimanche !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
15 sept. 2013 à 09:38
15 sept. 2013 à 09:38
Bonjour,
sans fichier impossible de tester...
Sinon ce n'est pas plutôt sh.[A1].select que tu veux ?
eric
sans fichier impossible de tester...
Sinon ce n'est pas plutôt sh.[A1].select que tu veux ?
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
15 sept. 2013 à 09:47
15 sept. 2013 à 09:47
Voici le fichier exemple :
https://www.cjoint.com/?CIpjTVq2Y1X
Une pression sur le bouton Formater selon Masque fait apparaître le bug.
une question d'ordre d'exécution des macros ?
Merci !!!
https://www.cjoint.com/?CIpjTVq2Y1X
Une pression sur le bouton Formater selon Masque fait apparaître le bug.
une question d'ordre d'exécution des macros ?
Merci !!!
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
15 sept. 2013 à 10:26
15 sept. 2013 à 10:26
Bizarrement le pastespecial provoque l'évènement sheetActivate mais sans activer la feuille.
Remplace par :
Remplace par :
Private Sub Workbook_SheetActivate(ByVal sh As Object) 'ouverture de chaque feuille en A1Et tant qu'on y est allège un peu ma macro, on ne va copier les formats que sur la plage utilisée :
If ActiveSheet.Name = sh.Name Then sh.[A1].Select
End Sub
Sub formaterFeuille()eric
Dim sh As Worksheet
For Each sh In Worksheets
If InStr("Accueil,Masque,Anne HEMMONNE", sh.Name) = 0 Then
With Worksheets("Masque")
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy
End With
sh.[A1].PasteSpecial Paste:=xlPasteFormats
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths
End If
Next sh
Application.CutCopyMode = False
End Sub
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
15 sept. 2013 à 10:49
15 sept. 2013 à 10:49
En effet, adaptée à mon classeur, tes macros fonctionnent au poil !
Pour comprendre :
- "on ne va copier les formats que sur la plage utilisée" : qu'est-ce que ça signifie ?
- "For Each sh In Worksheets" : qu'est-ce que désigne le "sh" ? Pourquoi on l'utilise ?
Pardon pour ces questions mais j'aimerai vraiment piger un tout petit peu ... :)
Pour comprendre :
- "on ne va copier les formats que sur la plage utilisée" : qu'est-ce que ça signifie ?
- "For Each sh In Worksheets" : qu'est-ce que désigne le "sh" ? Pourquoi on l'utilise ?
Pardon pour ces questions mais j'aimerai vraiment piger un tout petit peu ... :)
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
15 sept. 2013 à 13:13
15 sept. 2013 à 13:13
- "on ne va copier les formats que sur la plage utilisée" : qu'est-ce que ça signifie ?
avant je faisais :
.cells.copy : toute la feuille
après:
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy : que la zone utilisée
- "For Each sh In Worksheets" : qu'est-ce que désigne le "sh" ? Pourquoi on l'utilise ?
Worksheets est la collection de toutes les feuilles du classeur.
Littéralement :
pour toutes les feuilles du classeur
si le nom est différent de ...
feuille suivante
eric
avant je faisais :
.cells.copy : toute la feuille
après:
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy : que la zone utilisée
- "For Each sh In Worksheets" : qu'est-ce que désigne le "sh" ? Pourquoi on l'utilise ?
Worksheets est la collection de toutes les feuilles du classeur.
Littéralement :
pour toutes les feuilles du classeur
si le nom est différent de ...
feuille suivante
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
15 sept. 2013 à 13:19
15 sept. 2013 à 13:19
C'est très clair à présent.
J'ai encore d'autres idées pour optimiser la fonction, mais je vais essayer seul.
Un grand merci Eric pour ton travail désintéressé.
Toute la communauté te doit beaucoup.
J'ai encore d'autres idées pour optimiser la fonction, mais je vais essayer seul.
Un grand merci Eric pour ton travail désintéressé.
Toute la communauté te doit beaucoup.
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
15 sept. 2013 à 14:00
15 sept. 2013 à 14:00
De rien, n'oublie pas de mettre en résolu le moment venu.
eric
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
20 sept. 2013 à 19:25
20 sept. 2013 à 19:25
Bonjour à tous.
Je reviens vers vous à propos de la macro d'Eriic qui fonctionne exactement comme je le souhaitais.
J'ai une demande supplémentaire, complétant cette macro doit je rappelle le code :
----------------------------------------
Sub FormaterSelonMasque()
Dim sh As Worksheet
For Each sh In Worksheets
If InStr("2013,2012,Labos,Listes,Stats,Essais,Graphique,Masque", sh.Name) = 0 Then
With Worksheets("Masque")
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy
End With
sh.[A1].PasteSpecial Paste:=xlPasteFormats
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths
End If
Next sh
Application.CutCopyMode = False
End Sub
----------------------------------------
J'aimerais ajouter :
- copier contenu texte de la colonne A sur toutes les feuilles concernées et :
- copier contenu texte de la ligne 24 sur toutes les feuilles concernées.
J'ai bien trouvé la fonction .PasteSpecial xlPasteValues mais en essayant j'ai fait planter Excel ... champion !
Merci d'avance pour votre aide qui m'est si précieuse !
Je reviens vers vous à propos de la macro d'Eriic qui fonctionne exactement comme je le souhaitais.
J'ai une demande supplémentaire, complétant cette macro doit je rappelle le code :
----------------------------------------
Sub FormaterSelonMasque()
Dim sh As Worksheet
For Each sh In Worksheets
If InStr("2013,2012,Labos,Listes,Stats,Essais,Graphique,Masque", sh.Name) = 0 Then
With Worksheets("Masque")
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy
End With
sh.[A1].PasteSpecial Paste:=xlPasteFormats
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths
End If
Next sh
Application.CutCopyMode = False
End Sub
----------------------------------------
J'aimerais ajouter :
- copier contenu texte de la colonne A sur toutes les feuilles concernées et :
- copier contenu texte de la ligne 24 sur toutes les feuilles concernées.
J'ai bien trouvé la fonction .PasteSpecial xlPasteValues mais en essayant j'ai fait planter Excel ... champion !
Merci d'avance pour votre aide qui m'est si précieuse !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
20 sept. 2013 à 20:17
20 sept. 2013 à 20:17
Bonsoir,
si tu n'as pas de formules en colonne A et en ligne 24, ceci devrait suffire :
si tu n'as pas de formules en colonne A et en ligne 24, ceci devrait suffire :
Sub FormaterSelonMasque()eric
Dim sh As Worksheet
For Each sh In Worksheets
If InStr("2013,2012,Labos,Listes,Stats,Essais,Graphique,Masque", sh.Name) = 0 Then
With Worksheets("Masque")
.Columns(1).Copy sh.Columns(1)
.Rows(24).Copy sh.Rows(24)
.Range("A1", .Cells.SpecialCells(xlCellTypeLastCell)).Copy
sh.[A1].PasteSpecial Paste:=xlPasteFormats
sh.[A1].PasteSpecial Paste:=xlPasteColumnWidths
End With
End If
Next sh
Application.CutCopyMode = False
End Sub
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
Modifié par touroul le 20/09/2013 à 21:12
Modifié par touroul le 20/09/2013 à 21:12
Bonsoir Eriic
Sympa de t'y remettre !
En effet ça va comme prévu.
Par contre y a-t-il moyen de créer des zones à copier ?
Un peu comme .(A1:A24).Copy sh.(A1:A24)
Je complique encore une dernière fois un petit peu :
Il y a, sur certaines cellules de la feuille Masque, des listes déroulantes que je ne retrouve pas sur les autres feuilles.
Par contre, les formules se recopient bien.
Est-ce possible ?
Merci encore, c'est fort appréciable d'être aidé.
Sympa de t'y remettre !
En effet ça va comme prévu.
Par contre y a-t-il moyen de créer des zones à copier ?
Un peu comme .(A1:A24).Copy sh.(A1:A24)
Je complique encore une dernière fois un petit peu :
Il y a, sur certaines cellules de la feuille Masque, des listes déroulantes que je ne retrouve pas sur les autres feuilles.
Par contre, les formules se recopient bien.
Est-ce possible ?
Merci encore, c'est fort appréciable d'être aidé.
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
20 sept. 2013 à 22:05
20 sept. 2013 à 22:05
Bon, en fait , en tapant :
.Range("A1:A24").Copy sh.Range("A1:A24")
.Range("A36:A60").Copy sh.Range("A36:A60")
J'arrive à ne copier que certaines cellules (ça c'est fait ...)
Il ne reste que les listes déroulantes à récupérer ...
A plus si il te reste du courage pour moi !
.Range("A1:A24").Copy sh.Range("A1:A24")
.Range("A36:A60").Copy sh.Range("A36:A60")
J'arrive à ne copier que certaines cellules (ça c'est fait ...)
Il ne reste que les listes déroulantes à récupérer ...
A plus si il te reste du courage pour moi !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
20 sept. 2013 à 22:47
20 sept. 2013 à 22:47
Peut-être qu'avec un fichier de travail on pourra regarder...
eric
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
21 sept. 2013 à 09:17
21 sept. 2013 à 09:17
Bonjour Eriic
J'ai recréé les conditions de mon fichier original dans :
https://www.cjoint.com/?CIvjpUnvcov
J'ai noté les problèmes rencontrés en rouge.
Merci d'avance j'avance !
J'ai recréé les conditions de mon fichier original dans :
https://www.cjoint.com/?CIvjpUnvcov
J'ai noté les problèmes rencontrés en rouge.
Merci d'avance j'avance !
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
21 sept. 2013 à 10:12
21 sept. 2013 à 10:12
Bonjour,
With Worksheets("Masque")eric
...
sh.[E12:G12] = .[E12:G12]
End With
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
21 sept. 2013 à 10:39
21 sept. 2013 à 10:39
J'ai essayé, j'ai toujours l'erreur 400, tu ne l'as pas ?
Appliqué à mon fichier originel, dans les cellules où il y a des listes déroulantes, la liste ne change pas selon celle du Masque, et les cellules concernées affichent #VALEUR.
Please help !
BJ
Appliqué à mon fichier originel, dans les cellules où il y a des listes déroulantes, la liste ne change pas selon celle du Masque, et les cellules concernées affichent #VALEUR.
Please help !
BJ
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
Modifié par eriiic le 21/09/2013 à 11:11
Modifié par eriiic le 21/09/2013 à 11:11
j'ai toujours l'erreur 400
Et si tu disais en quelle ligne ??
Non, mais j'ai une erreur 1004 due à tes cellules fusionnées A11:B11.
Fuir la fusion de cellule et utiliser 'centrer sur plusieurs colonnes' dans Format de cellule.
Appliqué à mon fichier originel, dans les cellules où il y a des listes déroulantes, la liste ne change pas selon celle du Masque, et les cellules concernées affichent #VALEUR.
Ca marche bien sur l'exemple.
eric
Et si tu disais en quelle ligne ??
Non, mais j'ai une erreur 1004 due à tes cellules fusionnées A11:B11.
Fuir la fusion de cellule et utiliser 'centrer sur plusieurs colonnes' dans Format de cellule.
Appliqué à mon fichier originel, dans les cellules où il y a des listes déroulantes, la liste ne change pas selon celle du Masque, et les cellules concernées affichent #VALEUR.
Ca marche bien sur l'exemple.
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
21 sept. 2013 à 11:31
21 sept. 2013 à 11:31
Suis vraiment désolé mais je ne me débarrasse pas de l'erreur 400.
C'est juste une boîte de dialogue à valider qui ne me montre pas la ligne en cause dans VB.
Je remets mon fichier exemple (créé en XLS sous Excel 2010).
J'y ai scindé A11 et B11.
https://www.cjoint.com/?CIvlDgVU1Wr
Je sais que c'est lourd et je m'en excuse, mais j'y tiens vraiment, mes listes déroulantes changent souvent.
Un grand merci d'avance Eriic.
C'est juste une boîte de dialogue à valider qui ne me montre pas la ligne en cause dans VB.
Je remets mon fichier exemple (créé en XLS sous Excel 2010).
J'y ai scindé A11 et B11.
https://www.cjoint.com/?CIvlDgVU1Wr
Je sais que c'est lourd et je m'en excuse, mais j'y tiens vraiment, mes listes déroulantes changent souvent.
Un grand merci d'avance Eriic.
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
21 sept. 2013 à 12:03
21 sept. 2013 à 12:03
Si tu le fais en pas à pas avec F8 tu plantes toujours sur .Range("A1:A24").Copy sh.Range("A1:A24").
Il faut défusionner sur toutes les feuilles.
Clic sur la 1ère feuille, Shift+clic sur la dernière pour faire une sélection multiple et défusionner.
Sélectionner une feuille pour enlever la sélection multiple.
eric
Il faut défusionner sur toutes les feuilles.
Clic sur la 1ère feuille, Shift+clic sur la dernière pour faire une sélection multiple et défusionner.
Sélectionner une feuille pour enlever la sélection multiple.
eric
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
21 sept. 2013 à 14:56
21 sept. 2013 à 14:56
ok,
Déjà supprime les lignes et colonnes vides qui ne servent à rien dans ta feuille Listes et utilise des noms dynamique :
Préférence: =DECALER(Listes!$A$2;;;NBVAL(Listes!$A:$A)-1;)
Pareil pour les autres et tu n'as plus à t'en préoccuper. Elles s'adapteront automatiquement.
eric
Déjà supprime les lignes et colonnes vides qui ne servent à rien dans ta feuille Listes et utilise des noms dynamique :
Préférence: =DECALER(Listes!$A$2;;;NBVAL(Listes!$A:$A)-1;)
Pareil pour les autres et tu n'as plus à t'en préoccuper. Elles s'adapteront automatiquement.
eric
touroul
Messages postés
472
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
19 octobre 2024
16
Modifié par touroul le 24/09/2013 à 21:41
Modifié par touroul le 24/09/2013 à 21:41
Bonsoir Eric et les autres ...
J'ai pu appliquer avec succès tes conseils et la formule DECALER.
C'est vrai que ça m'a considérablement simplifié la life.
J'ai repris une à une toutes mes fiches clients et appliqué des listes déroulantes du type "=Fonctions" à toutes les fiches.
Les listes déroulantes ne se recopient pas avec la macro, mais ce n'est pas bien grave puisque les nouvelles fiches seront issues d'une copie du masque.
Un grand merci pour ta patience, sujet doublement résolu !
Bonne soirée
J'ai pu appliquer avec succès tes conseils et la formule DECALER.
C'est vrai que ça m'a considérablement simplifié la life.
J'ai repris une à une toutes mes fiches clients et appliqué des listes déroulantes du type "=Fonctions" à toutes les fiches.
Les listes déroulantes ne se recopient pas avec la macro, mais ce n'est pas bien grave puisque les nouvelles fiches seront issues d'une copie du masque.
Un grand merci pour ta patience, sujet doublement résolu !
Bonne soirée