| |||||||||||||||||||||||||||||||
Petite astucienne | Bonsoir, J'ai un fichier excel 2007 en feuille 1, je souhaite le mettre dans la feuille 2 et que la mise en forme se fasse en automatique, j'ai bien essayé une base de donnée mais ce n'ai pas concluant. Ci-joint le lien du fichier. Merci par avance, Cécilia | ||||||||||||||||||||||||||||||
Publicité | |||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
![]() ![]() |
en sélectionnant toute la feuile 1 edition copier, edition collage spécial "avec mise en forme" A+ | ||||||||||||||||||||||||||||||
![]() ![]() | Bonsoir, Je ne comprends pas ce que tu veux ! Sur la feuille 1 il y a des directives de mises en forme, la feuille 2 est vide, et il y a une feuille Essai comportant un tableau. Si c'est ce tableau que tu veux mettre en forme, il n'y a qu'à le faire ! Et supprimer la feuille 2 ! Pour le mettre en forme "automatiquement", il faut bâtir une macro ! Ce qui n'a d'intérêt pour une opération unique que si cela est plus rapide que de le faire manuellement. Ce qui n'est pas le cas ici ! | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Ce sont les directives de la feuille 1 que je souhaite lorsque je copierai la feuille 1 dans la feuille 2. (La feuille Essai reprend la directive de feuille1). J'ai essayé la macro mais ce n'ai pas positif. Bonne journée
| ||||||||||||||||||||||||||||||
![]() ![]() | Toujours pas très clair ! Mais pourquoi copier-coller feuille 1 dans feuille 2 (dans le même classeur
Quelle macro ? Comme je l'ai dit la mise en forme faut la faire ! Ne se fera pas toute seule ! L'automatiser signifie macro, mais macro pour faire une mise en forme une fois n'a aucun intérêt. | ||||||||||||||||||||||||||||||
Petite astucienne | Bonsoir, J'ai différentes extractions de fichiers, c'est pourquoi je souhaite automatiser. Dans feuille 1, c'est une extraction en provenance d'un ancien progiciel, c'est pourquoi je fais un copier/collage spécial/valeur dans la feuille 2. Ensuite j'ai fait une macro dans affichage macro enregistrer une macro avec la mise en forme que je souhaite. Par contre, si j'ai un nouveau fichier avec plus de colonnes et ligne la macro ne prend pas en compte ses suppléments. Ci-joint le fichier http://cjoint.com/?3GrspSieSM2 Merci par avance Cécilia | ||||||||||||||||||||||||||||||
Nouvel astucien | Bonsoir, Pour moi non plus les explications ne me semblent pas très claires. Toutefois je joins le fichier modifié à partir de ce que j'ai compris. Dans ce fichier tout ce qui sera saisi dans la feuille "Essai" le sera automatiquement dans la "Feuille 2" pour la plage "A1 - R100". Il est bien sûr possible d'étendre ou de réduire la plage et aussi de supprimer les zéros qui apparaissent dans la "feuille 2" en l'absence de saisie. Cordialement. http://cjoint.com/?0GsamPqegdn
Modifié par mpcdmu le 18/07/2014 00:53 | ||||||||||||||||||||||||||||||
![]() ![]() | Bonsoir, Ta macro, imbuvable comme toute macro enregistrée, a le mérite de fournir une information plus précise de ce que tu veux faire ! Alors il n'y a aucune raison pour que ton extraction insérée en Feuil1 soit ensuite recopiée pour être collée ailleurs ! Le résultat de l'extraction peut être mis en forme sur la même feuille. Ta macro réécrite : Sub MiseEnForme() Elle fonctionnera sur n'importe quelle feuille. Il convient cependant que l'insertion se fasse à partir de A1 et qu'il y ait une ligne d'en-têtes servie. [Si ce n'était pas le cas pour tous tes contenus transférés, il faudrait quelques petits ajustements pour qu'elle fonctionne également.] | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour Ferrand, Je pense que la dernière réponse est parfaite, je l'essaie et reviens vers toi. Bonne journée ensoleillée. Cécilia2
| ||||||||||||||||||||||||||||||
Petite astucienne | Bonsoir, Je l'ai installée sur mon poste à mon travail. S' il y a moins de ligne le quadrillage ne se supprime pas.
Maintenant lorsque j’ouvre un autre fichier excel 2007 sur mon poste qui n’a pas de macro , il y a également un fichier qui se nomme PERSONA .xlsb qui s’ouvre en même temps.
Nous sommes en réseau et cette macro n’est pas disponible sur les postes.
http://cjoint.com/?DGvulvNxUCv
Merci par avance,
Bonne soirée
| ||||||||||||||||||||||||||||||
![]() ![]() |
Ça veut dire quoi ?
Ton fichier m'a l'air bon !
| ||||||||||||||||||||||||||||||
Petite astucienne | Si j'efface le contenu d'une ligne ou d'une colonne entière, il reste toutes les bordures ?
| ||||||||||||||||||||||||||||||
![]() ![]() | Ah ! Si tu effaces, tu vides les cellules mais elles restent place ! Pour les faire disparaître, il faut les supprimer. Je ne comprends pas ce que tu veux faire, ni quel est le problème. | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Excuse-moi si je n'utilise pas les bons termes. Ce sont les bordures. Je ne sais pas pourquoi, dès que j'ouvre une feuille une feuille excel vierge ou pas, il y a également une feuille vide qui se nomme PERSONAl.XLSB qui s'ouvre en même temps. Bonne journée, Cécilia | ||||||||||||||||||||||||||||||
![]() ![]() | PERSONAL.xlsb est un classeur de macro personnelle. En principe, il se place dans le dossier XLSTART afin de démarrer automatiquement à l'ouverture d'Excel et reste masqué. Les macros qu'il contient sont utilisables à partir de l'onglet Compléments. Il ne s'est pas créé tout seul ! Les bordures (j'avais traduit) : si tu veux enlever une ligne ou une colonne, tu sélectionnes la ligne ou la colonne, clic droit et Supprimer... | ||||||||||||||||||||||||||||||
Petite astucienne | Bonsoir, Si PERSONAL.xlsb est un classeur de macro personnelle et si on est en réseau, la macro peut fonctionner que sur le poste ou elle a été crée ? Peux-tu me le confirmer ? D'ailleurs je l'ai supprimé. J'ai recréer la macro et sélectionner dans ce classeur à la place de classeur de macro personnel et là ça fonctionne sur d'autres postes. Bonne soirée
| ||||||||||||||||||||||||||||||
PC Astuces a besoin de vous pour survivre. Nos conseils et astuces vous ont aidé ? Vous avez résolu un problème sur votre ordinateur ? Vous avez profité de nos bons plans ? Aidez-nous en retour avec un abonnement de soutien mensuel. 5 € par mois 10 € par mois 20 € par mois
| |||||||||||||||||||||||||||||||
![]() ![]() | Le classeur PERSONAL.xlsb est destiné à te permettre de disposer des macros pour tous les travaux que tu fais sur ton ordi avec Excel. Il est ouvert avec Excel, normalement masqué (s'il est visible, il te faut l'afficher et le masquer avec la commande Masquer de l'onglet Affichage, et à la fermeture d'Excel ne pas omettre de valider la demande d'Excel d'enregistrer ce classeur, de façon qu'il demeure masqué par la suite). Mais il n'est effectivement disponible que sur l'ordi où il se trouve. Et non accessible en réseau car dans le dossier XLSTART de ton profil. | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Merci pour toutes ces informations, c'est parfait. Maintenant, je souhaite affecter un bouton dans le ruban excel 2013 pour cette macro. Je l'ai fais dans excel 2007 et c'est pratique. Merci par avance. Bonne journée | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Je souhaiterai rajouter dans cette macro les éléments suivants : Colonne A et B, alignement à gauche Colonne F, 2 décimales Sub MiseEnForme() With ActiveSheet With .UsedRange .Font.Size = 10 With .Rows(1) .RowHeight = 30 .Font.Bold = True .HorizontalAlignment = xlCenter .VerticalAlignment = xlTop End With .Columns.AutoFit With .Cells.Borders .LineStyle = xlContinuous .Weight = xlThin End With .AutoFilter End With With .PageSetup .Orientation = xlLandscape .LeftMargin = 0 .RightMargin = 0 .CenterHorizontally = True End With .Range("A2").Select End With ActiveWindow.FreezePanes = True End Sub
Merci par avance Cécilia
| ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, J'ai fait les modifications suivantes : - Alignement gauche colonne A et B et la macro fonctionne - 2 décimales pour la colonne F mais là ça bloque sur .PageSetup Sub MiseEnForme() Merci
| ||||||||||||||||||||||||||||||
![]() ![]() | Bonjour, Pas vraiment productif de réintroduire n'importe comment dans une macro réécrite des fragments de macros enregistrés... ! Sub MiseEnForme() 1) L'absence de point devant la propriété appelée pour renvoyer une plage colonne supprime la référence au qualificateur d'objet (ActiveSheet.UsedRange) et ce n'est donc plus la même plage qui est renvoyée, même si au cas particulier la plage recherchée est tout de même incluse dans la plage renvoyée. 2) La sélection propre aux enregistrements de macro est toujours inutile lorsque l'action ne vise pas exclusivement à sélectionner. Elle ne fait que demander à VBA des actions supplémentaires superflues. 3) Deux colonnes successives formant une même plage d'un seul tenant, une seule ligne de commande suffit pour lui affecter le format voulu. 4) Si le format des colonnes (sans distinction de la première ligne) est réalisé après le formatage de la ligne 1, il se substituera partiellement au format affecté à la ligne 1, il doit donc être réalisé avant.
| ||||||||||||||||||||||||||||||
Petite astucienne | Bonsoir, C'est parfait. Encore un grand merci. Bonne soirée
| ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, J’ai rajoutéalignement à gauche colonne C à la ligne ci-dessous. .Columns("A:B").HorizontalAlignment = xlLeft Lorsque je lance la macro, j’ai la fenêtre suivante : Microsoft Visuel Basic Erreur d’exécution ‘13’ Incompatibilité de type Merci par avance, Cécilia
| ||||||||||||||||||||||||||||||
![]() ![]() | Pour inclure la colonne C dans la commande d'alignement à gauche : .Columns("A:C").HorizontalAlignment = xlLeft | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Merci encore. Bonne journée. Cécilia | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour Ferrand, Est- il possible de rajouter : Un tri croissant sur la colonne E A chaque changement de mettre la première cellule en fluo (par exemple 1ère cellule AA, BB idem) Merci par avance, Cécilia | ||||||||||||||||||||||||||||||
![]() ![]() | Pour le tri : (...)
Quelle cellule exactement ? Et que veut dire "fluo" ? | ||||||||||||||||||||||||||||||
Petite astucienne | Colonne E, Colonne de droite, voilà ce que je souhaite, et dans la macro ci-dessus je le mets ou ?
http://cjoint.com/?DGvulvNxUCv
Merci | ||||||||||||||||||||||||||||||
![]() ![]() | Je ne vois pas d'élément de ton image dans le tableau ?
| ||||||||||||||||||||||||||||||
![]() ![]() | Mais je vois que tu relances ta question avec une formulation tout à fait différente, et en y réincluant le tri (déjà fait cependant !)... Abandon de ce sujet donc | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour Ferrand, En fait je n'ai pas été clair, je voulais faire ce rajout à ta réponse du 6/9/14 car elle fonctionne à merveille. J'ai pensé que la liste était trop grande (2 pages, c'est pourquoi j'ai préféré faire une autre demande pour plus de simplification). Encore merci pour toutes tes réponses. Bonne journée Cécilia | ||||||||||||||||||||||||||||||
Petite astucienne | Bonjour, Ma dernière demande à été résolue avec la réponse de Martial. Merci à tous pur votre aide précieuse. Cécilia | ||||||||||||||||||||||||||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|