Comment mettre une majuscule dans une cellule
Bonjour
Le tableau contient une colonne Sexe donc M et F la minuscule est interdite.
J'ai utilisé la fonction majuscule mais n'y a t il pas un autre moyen quand entrant la lettre F ou M en minuscule qu'elle soit en majuscule automatiquement dans la cellule.
pouvez-vous m'aider
cordialement
- Messages
- 1'089
- Excel
- 2021 FR
- Inscrit
- 17/12/2018
- Emploi
- Technicien maintenance robot Retraité
Bonjour,
Avec un code VBA voir pièce jointe colonne D (activer les macros)
Slts
Bonjour,
sinon tu as des polices avec que des majuscules.
eric
bonjour à vous deux
vos solutions :
ok pour la macro.
quelle police fonctionne ?
Cordialement
Tu en trouves sur google fonts, ex : https://fonts.google.com/specimen/Bebas+Neue?preview.text=mf
Sinon fais une recherche fonts all caps
bonjour
Mille merci
cordialement
Bonjour,
Juste pour info, si votre fichier est destiné à être utilisé sur d'autres PC il est probable que la police ne soit pas installée. Auquel cas ce sera changé sur une autre style Arial.
Malheureusement, on ne peut pas dans Excel sauvegarder les polices utilisées dans le fichier (alors que Word/PTT si).
EDIT/COMPLEMENT :
Vous avez par défaut Felix Titling, BankGothic Lt BT, Stencil, Engravers MT et Copperplate Gothic disponibles sur W10 qui font apparaitre les caractères en majuscule.
Bonjour à tous
Sinon, on peut affecter une liste de validation aux cellules concernées. La liste de validation sera composée des deux éléments F;M. On évite ainsi le VBA et aussi l'absence de la police spéciale "majuscule" sur la machine de l'utilisateur.
- L'utilisateur ne pourra saisir que F ou M ou f ou m (minuscules automatiquement transformées en majuscules) suivi de Entrée
- ou bien encore choisir le sexe via la liste de validation de la cellule
Bonjour
je viens de voir vos différentes solutions qui sont intéressantes. je vous remercie tous pour votre aide.
Cordialement.
Bonjour Fanfan38
Je reviens sur mon tableau en Xlsm .
1) Dans la grande majorité le nom de la personne naît porte le non du père sauf si c'est un enfant naturel. Pouvez-vous corriger la macro pour recopier le "NOM" dans la Colonne "NOM PÈRE". Attention il faut que je puisse le supprimer quand le père est inconnu.
Je pense savoir pourquoi j'ai un BUG. En effet, souvent quand je crée une nouvelle année, je complète en avance les colonnes "N° Vue et Année" ce qui fait que le tableau est créé en avance et non au fur et à mesure Non ?
Je vous joints le tableau car il n'applique pas les règles de majuscule ? Pouvez-vous m'aider
Merci. Ci-joint le tableau
Bonjour jag8308
Pour ce type de procédure, il faut faire attention à ce qui se passe si on exécute deux fois (ou plus) la procédure. Si on concatène du texte à un champ à la première exécution, alors à la seconde exécution on concatènera encore une fois le texte au champ et ainsi de suite.
Il faut donc prévoir un test pour savoir si le texte qu'on doit concaténer est déjà concaténé au champ ou pas. D'ailleurs, votre concaténation de "Jumeau" n'est pas comprise par ma pomme.
Concernant le nom, ce n'est pas très clair pour moi. Si le nom du père est absent, on le complète par le nom de la colonne 2. Ce qui signifie qu'après une exécution, toutes les noms de père vide seront remplacé par le nom en colonne 2. Il n'y aura donc pas de ligne avec père inconnu après la première exécution.
En général, dans une base de donnée, on crée un champ pour une donnée de base. Dans votre cas, il faudrait un champ "Père inconnu" dans la base.
De même la notion de jumeau est une information de base (on ne peut pas la calculer à partir d'autres champ de la base). Il faudrait donc un champ jumeau dans la base.
J'ai travaillé sur une grande partie du code de formatage. Le code est plus concis. Les notion de jumeaux et de père inconnu n'ont pas été traitées car pas claires pour moi.
Le code :
Sub MiseEnForme()
Dim t, i As Long, y
If Sheets("Feuil1").[a1].ListObject.ListRows.Count = 0 Then Exit Sub ' si aucune données alors on quitte
t = Sheets("Feuil1").[a1].ListObject.DataBodyRange.Value ' Array des données (sans les titres)
For Each y In Array(2, 4, 8, 11, 13, 14): For i = 1 To UBound(t): t(i, y) = UCase(t(i, y)): Next i, y ' en majuscule
For Each y In Array(3, 9, 12): For i = 1 To UBound(t): t(i, y) = Application.Proper(t(i, y)): Next i, y ' en nom propre
For i = 1 To UBound(t) ' pour les lignes de données
Select Case t(i, 10) ' compléter le champ "infos complémentaires" comme si c'était une femme
Case "hier": t(i, 15) = "Née Hier"
Case "ce jour": t(i, 15) = "Née ce jour"
Case Else: If IsDate(t(i, 10)) Then t(i, 15) = "Née le " & Format(t(i, 10), "dd/mm/yyyy")
End Select
If t(i, 4) = "M" Then t(i, 15) = Replace(t(i, 15), "Née", "Né") ' si c'est un homme, on remplace "Née" par "Né"
Next i
Sheets("Feuil1").[a1].ListObject.DataBodyRange = t ' on bascule les données modifiées sur la feuille
End Sub...
Bonjour,
je suis un peu perdu avec vos explications mais voilà ce que j'ai compris
1) Vous tester le tableau pour voir si des données sont déjà transformées dans ce cas la formule permet de ne pas reprendre ces données mais effectuer celles qui ne sont pas traité ?
Le début de l'histoire c'est que je dois remplir un autre fichier EXCEL2007 mais ayant des formats bien définis, les fameuses majuscules pour les noms et prénoms. Je ne voyais pas jouer avec la touche Maj pour entrer les noms et les prénoms.
Vos questions :
- Pour les jumeaux ce n'est pas grave.
- Colonne "Nom PÈRE" je fais égal NOM ce qui me donne le nom du père. Il arrive parfois que le nouveau né n'est pas de père mais seulement sa mère dans ce cas je retape XXX pour le nom du père et je rentre le nom de la mère car le nouveau né porte le nom de sa mère. Je rencontre très peu de cas. Pour éviter de faire un égal pour copier "NOM" dans la cellule père cela m'évite de faire un égal.
- Dans le fichier que vous m'avez envoyer je n'ai plus le champs "NOM Mère" ?
La finalité si je vous présente comme ça c'est que je copie toutes les données par colonne que je colle dans un fichier indépendant qui ne comporte qu'un champs "Nom Père". Et il est plus simple de compléter le tableau comme je l'ai fait car il suit les formats d'un acte de naissance.
Pensez-vous que j'ai tout compris?
Merci
Cdlt
Re,
Ok pour le nom. Si la personne a un père inconnu, le nom du père est XXX. Dans le cas contraire, si le nom du père est vide, alors on reprend celui de la colonne 2. c'est le "XXX" équivalent à père inconnu qui me manquait
Dites moi si j'ai bien compris quoi faire pour le nom du père :
- si le nom du père est "XXX", doit-on laisser le "XXX" ou bien doit-on y mettre le nom de la mère ? Dans la version jointe à ce message, j'ai laissé le XXX.
- si le nom du père est vide, alors on y met le nom de la colonne n°2 mais que fait-on pour le prénom du père ?
- Le champ "NOM Mère" existe toujours. La colonne a simplement été masquée. C'est la colonne J dans votre fichier initial qui était masquée et ça a dû perturber un copier-coller de ma part
.
A+
Bonjour
Je vous joins un nouveau format de tableau. J’ai déplacé les colonnes D, E, F pour les placer après la colonne A « N° Vue » cela est plus logique car tous les actes commencent par la date.
Modalités : je rentre
- les « N° Vue » pour l’année 1841 de 2 à 96 puis je sélectionne 1841 que je recopie jusqu’à 96. Je le fais manuellement.
- Le Nom, Prénom, Sexe et le « Nom » est copié dans la colle « Nom Père » car avant j’ai dans rentré dans cette cellule la formule : « = celule « Nom » que j’étire su quelques lignes » et que je renouvelle. Cela qui fait que dès que je rentre un nom il est copié automatiquement.
- Si le père est inconnu je remplace le nom copié par XXX et je rempli la cellule du « Nom Mère » par le « Nom »
Deux solutions :
- Soit le père est inconnu alors je rentre « XXX » et le « Nom » est entré à la mère
- Soit le père est connu alors le « Nom » de l’enfant est copié automatiquement dans la colonne « Nom Père ».
Ce que vous proposez c’est de mettre des XXX ou ne rien mettre puis appuyer sur le bouton macro
Ce que je recherche c’est que quand je rentre le « Nom » de l’enfant il se recopie automatiquement soit au père soit à la mère mais sans macro suivant le cas rencontré.
Pensez-vous que se soit possible ?
Cordialement