Fonction excel

Fermé
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 - Modifié par madmyke le 11/11/2015 à 13:10
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 - 21 nov. 2015 à 13:56
bonjour,
je travaille avec excel 2003
dans la colonne a, j'ai un format personnalisé 00000
je désirerais mettre les 2 dernier chiffres de la colonne a dans la colonne b
en vous remerciant.
A voir également:

10 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
11 nov. 2015 à 13:12
Bonjour
=DROITE(A1;2) pour un valeur texte

ou
= DROITE(A1;2)*1 pour avoir une valeur num.

crdlmnt
0
madmyke Messages postés 52792 Date d'inscription dimanche 20 janvier 2008 Statut Modérateur Dernière intervention 22 avril 2024 12 047
11 nov. 2015 à 13:12
0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
11 nov. 2015 à 13:29
bonjour à vous deux,
madmyke, j'ai bien vu cette page
vaucluse, merci également

ce que je voudrais c'est comment écrire = DROITE(A1;2)*1 en code vba pour toute ma colonne a et b sur 200 lignes
en vous remerciant.
0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
11 nov. 2015 à 13:34
avec l'enregistreur de macros j'obtiens
ActiveCell.FormulaR1C1 = "= RIGHT(RC[-1],2)*1"
Range("A2").Select
comment faire de A3 à A200 svp
Merci à vous
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
11 nov. 2015 à 13:46
Bonjour
salut Vaucluse :o)

petite macro pour jour férié
Option Explicit
'-------------------------------------
Sub extraire_droite2()
Dim Derlig As Byte, Lig As Byte

Application.ScreenUpdating = False
Derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
For Lig = 1 To Derlig
Cells(Lig, "B") = Right(Cells(Lig, "A"), 2)
Next
Columns("B").NumberFormat = "00"
End Sub


0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
11 nov. 2015 à 13:53
merci beaucoup Vaucluse
bonne fin de journée
0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
11 nov. 2015 à 15:35
bonsoir,
je reviens vers vous pour vous demander de bien vouloir corriger ce code
en vous remerciant.

Sub Mef_liste_chants()
Dim Derlig As Byte, Lig As Byte

Application.ScreenUpdating = False

Columns("A:A").Select
Selection.NumberFormat = "00000"
Range("A1").Select
ActiveCell.FormulaR1C1 = "Assemblée Marguerittes"
Columns("B:C").Select
Selection.Insert Shift:=xlToRight
Rows(2).Insert Shift:=xlDown
Range("A1").Select
Range("A1").Select

With Selection.Font
.Name = "Times New Roman"
.Size = 12
End With

Selection.Font.Bold = True
ActiveCell.FormulaR1C1 = "= RIGHT(RC[-1],2)*1"
Derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row

For Lig = 1 To Derlig
Cells(Lig, "B") = Right(Cells(Lig, "A"), 2)
Next
Columns("B").NumberFormat = "00"
Range("A1").Select

Application.ScreenUpdating = True
End Sub
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
11 nov. 2015 à 16:21
Voir avec Vaucluse puisque je n'ai pas existé pour toi
0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
21 nov. 2015 à 07:14
bonjour michel m,
je suis désolé d'avoir zappé ta réponse, certainement du à mon état de santé qui a nécessité 15 jours d'hospitalisation et retour à l'hosto début janvier pour une op lourde.
je te présente toutes mes excuses.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
21 nov. 2015 à 09:58
Bonjour
OK :o)

Ton problème vient que l'on a un nombre dans la colonne A --> on ne peut donc pas utiliser la fonction "DROITE" directement: il faut transformer A3 en texte par la fonction CTXT (ou par un autre moyen)

La formule serait donc
=SI(A3="";"";DROITE(CTXT(A3;0);2))

a mon avis, il est inutile maintenant d'écrire une macro mais....
Option Explicit
'--------------------------------------------
Sub Mef_liste_chants()
Dim Derlig As Byte, Lig As Byte

Application.ScreenUpdating = False
'mises en forme
Columns("A").NumberFormat = "00000"
Columns("B:C").Insert Shift:=xlToRight
Rows(2).Insert Shift:=xlDown
With Range("A1")
.Value = "Assemblée Marguerittes"
With .Font
.Name = "Times New Roman"
.Size = 12
.Bold = True
End With
End With

' extrait les 2 derniers caractères de la colonne A
Derlig = Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
For Lig = 3 To Derlig
If Cells(Lig, "A") <> "" Then: Cells(Lig, "B") = Right(CStr(Cells(Lig, "A")), 2)
Next
Columns("B").HorizontalAlignment = xlCenter
Range("A1").Select

'INUTILE: Application.ScreenUpdating = True
End Sub


pour terminer
Il est fondamental de préciser EXACTEMENT le contexte de ton classeur lorsque tu demandes de l'aide
au besoin:
Mettre le classeur sans données confidentielles en pièce jointe sur https://www.cjoint.com/
et coller le raccourci proposé (clic droit) dans le message de réponse


Bon rétablissement de ta santé
0
vielhom Messages postés 24 Date d'inscription mercredi 11 novembre 2015 Statut Membre Dernière intervention 30 décembre 2015 3
21 nov. 2015 à 13:56
bonjour michel m,
je te remercie de ne pas m'avoir tenu rigueur et pour tes explications.
je pense que je vais m'en sortir sinon je reviens.
je mettrai résolu plus tard si c'est bon.
encore merci.
0