Pb de format de cellules en VBA

  • Initiateur de la discussion Initiateur de la discussion newpixi
  • 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 !

N

newpixi

Guest
Bonjour,

Je ne sais pas comment inscrire cette formule dans VBA. En effet, VBA n'accepte pas les %.

Je cale...

Selection.numberformat="#,##0.00" %";[Red]-#,##0.00" %""

Merci,

Antoine
 
Effacer les vigules

Bonjour,

Je me pose maintenant la question suivante:

Comment peut-on effacer les chiffres après la virgule sous VBA?
C'est à dire que 6,7999999 devienne 6,7 par exemple.

Les formats ne marchent pas sous VBA 🙁

Merci pour votre aide

Antoine
 
Re : Pb de format de cellules en VBA

Merci tototiti2008,

En fait, j'ai une feuille avec un grand nombre de valeur copiées en "dur". Ces valeurs ont parfois plusieurs chiffres après la virgule.

Ces valeurs doivent être mises à jour fréquemment par un autre utilisateur, qui connait mal excel (pire que moi!). De ce fait, il me serait utile de trouver une macro pour automatiser la suppression des virgules.

D'ailleurs je n'arrive pas à appliquer ta formule (ref circulaire)...

Merci pour ton aide,

Je vais continuer à chercher de mon coté,

Antoine
 
Re : Pb de format de cellules en VBA

Re,

J'ai trouvé la solution au problème,

Voici la réponse :

Code:
Sub MAJ()


'Mise en forme des cellules dans la feuille "DB", on ne garde qu'une décimale arrondie au
'supérieur
Sheets("DB").Select
For n = 3 To 60
  Range(Cells(4, n), Cells(9000, n)).Select
  [COLOR="Red"]Selection = Application.Round(Selection, 1)[/COLOR]
Next n
End Sub

Encore une chtite question,

Comment fait t'on la boucle suivante :? 😕

Code:
For n= 1, 3, 9, 11 
Then "COndition #1"
Else
End Next

Merci pour votre aide,

Antoine
 
Re : Pb de format de cellules en VBA

Re,
Bonjour jhofman,

ta demande était d'arrondir à l'inférieur.

puis tu poste un code :

'Mise en forme des cellules dans la feuille "DB", on ne garde qu'une décimale arrondie au supérieur

c'est déjà pas la même chose...

et en regardant ton code, tu mets :

Selection = Application.Round(Selection, 1)

qui n'arrondit ni au supérieur, ni à l'inférieur mais au plus proche....
il va falloir se décider 🙂
 
Re : Pb de format de cellules en VBA

Re,

Désolé tototiti2008 pour avoir mal formulé ma demande,

Je voulais juste tronquer les virgules afin de permettre certaines formules de fonctionner (la méthode .find notamment).

L'arrondi au supérieur ou à l'inférieur ne m'intéressait peu au final.

Merci pour ton aide tototiti2008,

Antoine

Ps: Une idée pour la boucle sans utiliser "Case" ? ou la fonction if couplé à "or"?
Code:
 If n = 34 Or 41 Or 42 Or 43 Or 50 Or 51 Or 52 Or 52 Or 54 Or 55 Or 59 Or 60 Or 61 Or 83 Then
 
Dernière modification par un modérateur:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Remplissage auto
Réponses
14
Affichages
386
Réponses
3
Affichages
210
Réponses
8
Affichages
435
Retour