• Initiateur de la discussion Initiateur de la discussion michel2000
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

michel2000

XLDnaute Occasionnel
Bonsoir Forum;


Je n'ai rien trouvé pour résoudre ce qui suit:

Un classeur contenant 10 feuilles:

Existe-t-il une formule qui fait en sorte que par exemple toutes les colonne A des 10 feuilles ont pour format "Date (jj-mm-aaaa").

Je veux qu'en appelant cette formule que ci-haut s'exécute en une seule opération.

Je vous remercie de votre attention,
Michel
 
Re : Format des colonnes

Re



En voici une de macro
qui traite les cellules de la colonne A ( de A1 à Ax ou x représente
la dernière cellule non vide de cette colonne) d'un classeur de 10 feuilles.

Code:
Option Explicit
'ici changer la lettre en fonction de la colonne
Const COL As String = "A"
Sub formatdatec()
Dim wbk As Workbook
Dim c As Range
Dim i As Byte
Set wbk = ThisWorkbook
For i = 1 To 10
With wbk.Sheets(i)
For Each c In .Range(wbk.Sheets(i).Cells(1, COL), wbk.Sheets(i).Cells(65536, COL).End(xlUp))
c.NumberFormatLocal = "jj-mm-aaaa"
Next
End With
Next
End Sub
 
Dernière édition:
Re : Format des colonnes

Bonsoir Michel, vbacrumble :

Sans macro :

- clic droit sur un onglet et Sélectionner toutes les feuilles

- sélectionner la colonne A puis menu Format-Cellule-Nombre-Personnalisée

- entrer le format personnalisé souhaité : "Date "(jj-mm-aaa) ou jj-mm-aaaa

Bonne nuit.
 
Re : Format des colonnes

Re, bonsoir job75


Houps, suis-je bête

Le pire c'est que pour créer des données de test , j'ai créer un classeur de 10 feuilles
et j'ai fait Clic-Droit/Sélectionner tous les feuilles
j'ai saisi des dates

et je suis parti dans VBE faire ma petite affaire.

Je suis mort de rire. 😛
 
Re : Format des colonnes

Bonsoir vbacrumble et job75;

Merci pour vos solutions qui m'ont mis sur certaines pistes.

"Tu veux donc dire formater les cellules non vides de la colonne A, n'est-ce pas? "

Je cherche une formule qui ferait en sorte que la colonne A (vide ou non vide) de toutes les feuilles d'un classeur soit au format "DATE" jj-mm-aaaa.

Manuellement cela se fait très bien si je clique la colonne A et presse le bouton gauche de la souris et en choisissant "Format" on choisi "Date".

Mais je cherche une formule qui formate toutes les colonne A en une seule opération.

Je vais poursuivre et si je trouve la solution, je viendrai l'afficher.

Encore une fois Merci à vous deux et bonne fin de soirée
Michel
 
Re : Format des colonnes

Bonjour à tous

essaye peut être le code ci-dessous :

Code:
Option Explicit
Sub test()
Dim ws As Worksheet
For Each ws In Worksheets
    ws.Columns("A:A").NumberFormat = "dd-mm-yyyy"
Next ws
End Sub

s'applique sur le classeur actif.

bonne journée
@+
 
Re : Format des colonnes

Bonjour à tous

Si je ne me trompe , appliquer un format sur une colonne entière
(si les cellules ne sont pas toutes utilisées , cad les 65536 cellules d'une colonne, quelle utilité ?) fait prendre un embonpoint considérable au classeur.

D'ou ma question , à la restriction des cellules "utiles" où appliquer le format.


Sinon , tu parles de formule, dans ce cas

="DATE :"&TEXTE(A1;"jj-mm-aaaa")

et pour un format personnalisé:
"DATE : "jj/mm/aaaa (comme le disait déjà job75 cette nuit à 00h29)
 
Dernière édition:
Resolu : Format des colonnes

Bonsoir Pierrot93 et vbacrumble;

Super Pierrot93, ton code fonctionne très bien et correspond exactement à ce que je cherchais. Je vais garder ce code précieusement.

Merci aussi à vbacrumble car ton code me sera utile dans certain cas précis.

Encore une fois Merci beaucoup à vous deux et bonne soirée
Michel
 
Re : Format des colonnes

Bonjour


michel2000:
Donc tu as vraiment besoin que toutes les cellules de la colonne A
aient un format particulier ?

Ne formater que les cellules utilisées de la colonne A n'est pas suffisant ?

Ce qui comme je l'ai dis précédemment fera enfler la taille de ton classeur
 
Dernière édition:
Re : Format des colonnes

Bonjour Forum et vbacrumble;

""...fera enfler la taille de ton classeur ...""
Je n'avais pas pensé à cela mais j'en ai pris conscience en relisant ton autre message et tu as parfaitement raison. Effectivement, affecter le format Date là où il n'y a pas de cellules vides dans la colonne A.

Par formule, est-il possible de prédéfinir en établissant que, pour toutes les feuilles du classeur, que A1:A50 sont des cellules format Date.

Etant novice, en étudiant ton code, pourrais-tu m'expliquer en quelques mots le:
For Each c In .Range(wbk.Sheets(i).Cells(1, COL), wbk.Sheets(i).Cells(65536, COL).End(xlUp)) c.NumberFormatLocal = "jj-mm-aaaa"

Merci beaucoup pour ton aide
Michel
 
Dernière édition:
Re : Format des colonnes

Bonjour

Soit la colonne A, qui commence en A1 (en théorie)

Pour identifier la dernière cellule non vide:
une solution parmi d'autres
Range("A65536").End(xluP)

Maintenant pour sélectionner les cellules de la colonne A
de la 1ère cellule (A1) à la dernière non vide

Range("A1:A" & range("A65536").end(xluP).Row).Select

Essaye la macro ci-dessous pour mieux comprendre
(j'ai inscris plusieurs méthodes dont une à éviter la numéro 2 )
Code:
Sub macroColonna()
Dim m$
Range("A1:A10") = Rnd
m = "Ecriture 1: Range(""A1:A"" & [A65536].End(xlUp).Row) --> " & _
Range("A1:A" & [A65536].End(xlUp).Row).Address & Chr(13)
m = m & "Ecriture 2 (attention): Range([A1], [A1].SpecialCells(xlLastCell)) --> " & Range([A1], [A1].SpecialCells(xlLastCell)).Address & Chr(13)
m = m & "Ecriture 3: Range([A1], [A65536].End(xlUp)) --> " & Range([A1], [A65536].End(xlUp)).Address
MsgBox m
End Sub

L'interet de : NumberFormatLocal
permet de préciser le format dans la langue de l'OS
donc ici en français

alors que NumberFormat sera au format anglo-saxon.
 
Dernière édition:
Re : Format des colonnes

Bonjour vbacrumble

Je te remercie beaucoup pour toutes ces explications que j'ai imprimées afin de les conserver. Je vais étudier sérieusement la macro macroColonna.

Encore une fois un gros merci pour ton aide que j'apprécie beaucoup
Michel 🙂
 
Re : Format des colonnes

Re



La macro de mon premier message était écrite afin de permettre
de choisir la colonne en modifiant juste:

Code:
Const COL As String = [B]"A"[/B]


Exemple pour la colonne B mettre B, à la place de A etc ...

et prenait en compte le fait de formater uniquement la "zone utile" de la colonne à traiter.

PS: la macro colonneA est purement illustrative (et ne sert à rien de concret en l'état)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
1 K
P
Réponses
3
Affichages
2 K
punk_sportif
P
J
Réponses
22
Affichages
3 K
jui42
J
Retour