Edition Remplacer fonctionne lors de l'enregistrement de la macro
17 réponses
PLG
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/
Range("IV65536") doit être vide
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
Adapte le nom de la feuille et de la plage '--------------------------------- Sub test() Dim C As Range Application.ScreenUpdating = False With Worksheets("Feuil1") .Activate With .Range("A1:A10") .Replace ".", ",", xlPart For Each C In .Cells C.Select SendKeys "{F2}" & "~" t = Timer + 1 / 10000 Do While Timer <= t DoEvents Loop Next End With End With Application.ScreenUpdating = True End Sub '---------------------------------
"PLG" a écrit dans le message de groupe de discussion :
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
Bonjour,
Une façon de faire...
(pour me faire plaisir...!)
Adapte le nom de la feuille et de la plage
'---------------------------------
Sub test()
Dim C As Range
Application.ScreenUpdating = False
With Worksheets("Feuil1")
.Activate
With .Range("A1:A10")
.Replace ".", ",", xlPart
For Each C In .Cells
C.Select
SendKeys "{F2}" & "~"
t = Timer + 1 / 10000
Do While Timer <= t
DoEvents
Loop
Next
End With
End With
Application.ScreenUpdating = True
End Sub
'---------------------------------
"PLG" <PLG@discussions.microsoft.com> a écrit dans le message de groupe de discussion :
9B1421F3-2313-4455-9CED-984C2B11E5F5@microsoft.com...
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
Adapte le nom de la feuille et de la plage '--------------------------------- Sub test() Dim C As Range Application.ScreenUpdating = False With Worksheets("Feuil1") .Activate With .Range("A1:A10") .Replace ".", ",", xlPart For Each C In .Cells C.Select SendKeys "{F2}" & "~" t = Timer + 1 / 10000 Do While Timer <= t DoEvents Loop Next End With End With Application.ScreenUpdating = True End Sub '---------------------------------
"PLG" a écrit dans le message de groupe de discussion :
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
michdenis
Par macro,
Cela donne ceci: Trop facile de cette manièree ! ;-) '------------------------------- Sub test2() Application.ScreenUpdating = False With Worksheets("Feuil") With .Range("A1:A10") .TextToColumns Destination:=Range("A1"), _ DataType:=xlDelimited, DecimalSeparator:="." End With End With Application.ScreenUpdating = True End Sub '-------------------------------
"FFO" a écrit dans le message de groupe de discussion :
Salut à toi
As tu essayé sur chaque colonne données/convertir
Celà devrait faire
Dis moi !!!!!
Par macro,
Cela donne ceci:
Trop facile de cette manièree !
;-)
'-------------------------------
Sub test2()
Application.ScreenUpdating = False
With Worksheets("Feuil")
With .Range("A1:A10")
.TextToColumns Destination:=Range("A1"), _
DataType:=xlDelimited, DecimalSeparator:="."
End With
End With
Application.ScreenUpdating = True
End Sub
'-------------------------------
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de groupe de discussion :
841E4A08-6E48-4BCF-86F7-CF44D3BEDB44@microsoft.com...
Salut à toi
Cela donne ceci: Trop facile de cette manièree ! ;-) '------------------------------- Sub test2() Application.ScreenUpdating = False With Worksheets("Feuil") With .Range("A1:A10") .TextToColumns Destination:=Range("A1"), _ DataType:=xlDelimited, DecimalSeparator:="." End With End With Application.ScreenUpdating = True End Sub '-------------------------------
"FFO" a écrit dans le message de groupe de discussion :
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007
qui consiste à copier 1 dans la cellule et d'utiliser la méthode
"Coller" valeur seulement et opération : multiplication
par macro.
Quelqu'un a une explication ?
'---------------------
Sub test1()
Application.ScreenUpdating = False
With Worksheets("Sheet1")
.Range("A1:A10").Replace ".", ",", xlPart
.Range("G1") = 1
.Range("G1").Copy
With .Range("A1:A10")
.PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply
End With
.Range("G1") = ""
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
"isabelle" <i@v> a écrit dans le message de groupe de discussion :
#rV4kf9ALHA.4584@TK2MSFTNGP06.phx.gbl...
bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/
Range("IV65536") doit être vide
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
michdenis
Il faut interpréter cela au sens littéraire sans plus. Tu n'a pas écrit une bêtise...rassure-toi!
Tiens, une autre façon de faire :
'----------------------------- Sub test() Dim C As Range Application.ScreenUpdating = False With Worksheets("Feuil1") For Each C In .Range("A1:A10") C.Value = Replace(C, ".", ",") * 1 Next End With Application.ScreenUpdating = True End Sub '-----------------------------
"FFO" a écrit dans le message de groupe de discussion :
Salut michdenis
que veux tu dire par :
"Trop facile de cette manièree !"
Ais je dis une bétise ?????
Merci de lever le doute
Il faut interpréter cela au sens littéraire sans plus.
Tu n'a pas écrit une bêtise...rassure-toi!
Tiens, une autre façon de faire :
'-----------------------------
Sub test()
Dim C As Range
Application.ScreenUpdating = False
With Worksheets("Feuil1")
For Each C In .Range("A1:A10")
C.Value = Replace(C, ".", ",") * 1
Next
End With
Application.ScreenUpdating = True
End Sub
'-----------------------------
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de groupe de discussion :
6DBAA851-63D1-4026-8A48-C48605C82E96@microsoft.com...
Salut michdenis
Il faut interpréter cela au sens littéraire sans plus. Tu n'a pas écrit une bêtise...rassure-toi!
Tiens, une autre façon de faire :
'----------------------------- Sub test() Dim C As Range Application.ScreenUpdating = False With Worksheets("Feuil1") For Each C In .Range("A1:A10") C.Value = Replace(C, ".", ",") * 1 Next End With Application.ScreenUpdating = True End Sub '-----------------------------
"FFO" a écrit dans le message de groupe de discussion :
Salut michdenis
que veux tu dire par :
"Trop facile de cette manièree !"
Ais je dis une bétise ?????
Merci de lever le doute
isabelle
et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
et l'addition d'une cellule vide non plus ?
isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007
qui consiste à copier 1 dans la cellule et d'utiliser la méthode
"Coller" valeur seulement et opération : multiplication
par macro.
Quelqu'un a une explication ?
'---------------------
Sub test1()
Application.ScreenUpdating = False
With Worksheets("Sheet1")
.Range("A1:A10").Replace ".", ",", xlPart
.Range("G1") = 1
.Range("G1").Copy
With .Range("A1:A10")
.PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply
End With
.Range("G1") = ""
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
"isabelle"<i@v> a écrit dans le message de groupe de discussion :
#rV4kf9ALHA.4584@TK2MSFTNGP06.phx.gbl...
bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/
Range("IV65536") doit être vide
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
michdenis
Eh oui, même avec l'addition ! D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle" a écrit dans le message de groupe de discussion : #OefxI# et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
Eh oui, même avec l'addition !
D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle" <i@v> a écrit dans le message de groupe de discussion :
#OefxI#ALHA.4704@TK2MSFTNGP06.phx.gbl...
et l'addition d'une cellule vide non plus ?
isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007
qui consiste à copier 1 dans la cellule et d'utiliser la méthode
"Coller" valeur seulement et opération : multiplication
par macro.
Quelqu'un a une explication ?
'---------------------
Sub test1()
Application.ScreenUpdating = False
With Worksheets("Sheet1")
.Range("A1:A10").Replace ".", ",", xlPart
.Range("G1") = 1
.Range("G1").Copy
With .Range("A1:A10")
.PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply
End With
.Range("G1") = ""
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
"isabelle"<i@v> a écrit dans le message de groupe de discussion :
#rV4kf9ALHA.4584@TK2MSFTNGP06.phx.gbl...
bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/
Range("IV65536") doit être vide
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
Eh oui, même avec l'addition ! D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle" a écrit dans le message de groupe de discussion : #OefxI# et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
isabelle
et bien plus ça change moins c'est compatible :-( autre soluce, mettre les données cdbl(x) dans un tableau, effacer completement la plage pour éliminé le formatage texte, et transposé le tableau. isabelle
Le 2010-06-04 08:56, michdenis a écrit :
Eh oui, même avec l'addition ! D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle" a écrit dans le message de groupe de discussion : #OefxI# et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat
et bien plus ça change moins c'est compatible :-(
autre soluce, mettre les données cdbl(x) dans un tableau, effacer
completement la plage pour éliminé le formatage texte, et transposé le
tableau.
isabelle
Le 2010-06-04 08:56, michdenis a écrit :
Eh oui, même avec l'addition !
D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle"<i@v> a écrit dans le message de groupe de discussion :
#OefxI#ALHA.4704@TK2MSFTNGP06.phx.gbl...
et l'addition d'une cellule vide non plus ?
isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007
qui consiste à copier 1 dans la cellule et d'utiliser la méthode
"Coller" valeur seulement et opération : multiplication
par macro.
Quelqu'un a une explication ?
'---------------------
Sub test1()
Application.ScreenUpdating = False
With Worksheets("Sheet1")
.Range("A1:A10").Replace ".", ",", xlPart
.Range("G1") = 1
.Range("G1").Copy
With .Range("A1:A10")
.PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply
End With
.Range("G1") = ""
End With
Application.ScreenUpdating = True
End Sub
'--------------------------------------
"isabelle"<i@v> a écrit dans le message de groupe de discussion :
#rV4kf9ALHA.4584@TK2MSFTNGP06.phx.gbl...
bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/
Range("IV65536") doit être vide
Bonjour à tous
Cela fait longtemps que cela me court...
J'ai des données exportées d'une application, elles sont en format texte et
avec un point comme séparateur au lieu d'une virgule.
Je fais donc un Edition / Remplacer les points par les virgules en macro.
Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les
données passent en mode numérique et le séparateur est bien la virgule.
Hors si je lance cette macro par la suite, le point est bien remplacé par la
virgule, mais les valeurs restent en format texte et sont donc inexploitables
en l'état.
C'est frustrant...!!!!
Voici mon bête code :
Sub Macro2()
Range("P23:S35").Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
End Sub
Le problème a déjà dû être soulevé....
Merci à vous si vous arrivez à me dépanner.
Bonne journée
Pat
et bien plus ça change moins c'est compatible :-( autre soluce, mettre les données cdbl(x) dans un tableau, effacer completement la plage pour éliminé le formatage texte, et transposé le tableau. isabelle
Le 2010-06-04 08:56, michdenis a écrit :
Eh oui, même avec l'addition ! D'ailleurs, je t'ai mis la procédure que j'ai utilisée pour tester.
"isabelle" a écrit dans le message de groupe de discussion : #OefxI# et l'addition d'une cellule vide non plus ? isabelle
Le 2010-06-04 08:21, michdenis a écrit :
Bonjour Isabelle,
La bonne vieille méthode ne fonctionne plus sous Excel 2007 qui consiste à copier 1 dans la cellule et d'utiliser la méthode "Coller" valeur seulement et opération : multiplication par macro. Quelqu'un a une explication ? '--------------------- Sub test1() Application.ScreenUpdating = False With Worksheets("Sheet1") .Range("A1:A10").Replace ".", ",", xlPart .Range("G1") = 1 .Range("G1").Copy With .Range("A1:A10") .PasteSpecial xlPasteValues, xlPasteSpecialOperationMultiply End With .Range("G1") = "" End With Application.ScreenUpdating = True End Sub '--------------------------------------
"isabelle" a écrit dans le message de groupe de discussion : # bonjour Pat,
ajoute ces deux lignes à la fin de ta macro, ps/ Range("IV65536") doit être vide
Bonjour à tous Cela fait longtemps que cela me court... J'ai des données exportées d'une application, elles sont en format texte et avec un point comme séparateur au lieu d'une virgule. Je fais donc un Edition / Remplacer les points par les virgules en macro. Lorsque je crée ma macro via l'enregistreur cela fonctionne très bien, les données passent en mode numérique et le séparateur est bien la virgule. Hors si je lance cette macro par la suite, le point est bien remplacé par la virgule, mais les valeurs restent en format texte et sont donc inexploitables en l'état. C'est frustrant...!!!! Voici mon bête code : Sub Macro2() Range("P23:S35").Select Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:úlse End Sub
Le problème a déjà dû être soulevé.... Merci à vous si vous arrivez à me dépanner. Bonne journée Pat