Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pb macro

12 réponses
Avatar
dom
Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:=15
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (macro de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom

10 réponses

1 2
Avatar
FFO
Salut dom

Une idée peut être
La qualité des données est peut être en cause
Selectionnes colonne par colonne est fait Données/Convertir
3 fois suivant et terminer

J'ai souvent des difficultés de cet ordre que je résouds de cette manière

Espérons que toi aussi

Dis moi !!!!


Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (macro de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom


Avatar
Daniel
Bonjour.
Tu aurais intérêt à nettoyer ta macro. L'enregistreur note des actions
inutiles. Ceci dit, qu'est-ce qui ne fonctionne pas ? La macro ne fait rien,
ou elle plante ? et dans ce cas, sur quelle ligne ?
Cordialement.
Daniel
"dom" a écrit dans le message de news:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom


Avatar
lSteph
Bonjour,

A priori cette macro fonctionne.
Si tu obtiens une erreur 1004 vérifie que tu n'as pas des fusions de
cellules.
Les fusions sont une chose à proscrire tout comme les .select, on peut
presque toujours les éviter.

Cordialement.

lSteph
(fusions... beurk!)






On 6 juil, 12:32, dom wrote:
Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le cli ent
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (mac ro de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom


Avatar
jps
et les infusions aussi, je pense, sauf celles à base d'edelzwicker ou de
pinot noir
jps

"lSteph" a écrit dans le message de news:

lSteph
(fusions... beurk!)






On 6 juil, 12:32, dom wrote:
Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom


Avatar
-=lolol=-
Bonjour jps,

et les infusions aussi, je pense, sauf celles à base d'edelzwicker ou de
pinot noir
jps


Je me souviens d'un temps ou il était impenssable qu'il est un [HS] sur
mpfe sans que le brillant "chef HS" ne vienne mettre son grain de sel
:-)

J'ai perdu ton adresse mail et ton téléphone JPS ... peux tu m'écrire ?
florent.dillac.arobase.free.fr

@+lolo

Avatar
lSteph
A une lettre près ce serait presque pareil mais totalement différent,

Edelzwicker comme Pinot noir,...à prEscrire

;-)


On 6 juil, 14:36, "jps" wrote:
et les infusions aussi, je pense, sauf celles à base d'edelzwicker ou de
pinot noir
jps

"lSteph" a écrit dans le message de news:

lSteph
(fusions... beurk!)

On 6 juil, 12:32, dom wrote:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le c lient
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart , _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (m acro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom




Avatar
dom
Salut Daniel,

La macro ne plante pas. Elle fait une partie du travail mais pas tout le
travail

Cordialement

Dom


Bonjour.
Tu aurais intérêt à nettoyer ta macro. L'enregistreur note des actions
inutiles. Ceci dit, qu'est-ce qui ne fonctionne pas ? La macro ne fait rien,
ou elle plante ? et dans ce cas, sur quelle ligne ?
Cordialement.
Daniel
"dom" a écrit dans le message de news:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro (macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom







Avatar
Daniel
On va donc utiliser les forceps ;-)))
Qu'est-ce qui est exécuté et qu'est-ce qui ne l'est pas ?
Au reste, pourquoi appliques-tu deux formats différents à la même plage ?
Daniel
Copie la plage dans un classeur et mets-la sur www.cjoint.com
"dom" a écrit dans le message de news:

Salut Daniel,

La macro ne plante pas. Elle fait une partie du travail mais pas tout le
travail

Cordialement

Dom


Bonjour.
Tu aurais intérêt à nettoyer ta macro. L'enregistreur note des actions
inutiles. Ceci dit, qu'est-ce qui ne fonctionne pas ? La macro ne fait
rien,
ou elle plante ? et dans ce cas, sur quelle ligne ?
Cordialement.
Daniel
"dom" a écrit dans le message de news:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le
client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro
(macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom









Avatar
dom
Salut Daniel,

Je t'ai envoyé le fichier excel (excel 2000) avec la macro(cmpte3)
http://cjoint.com/?hgsgA8dG7u
Dans le fichier il y a 3 feuilles 1 feuille réf qui contient des données
brutes extraites d'une autre application, une feuille intitulée macro où on
veut le résultat de la macro et une feuille fin avec la même mise en forme à
obtenir (séparateur de milliers + suppression des centimes +.
Au début, faire un copier coller de la plage réf c3 : j37 et supprimer les
colonnes avec le symbole "|" ainsi que la colonne d'intitulés
Si pas clair , n'hésites pas à m'écrire

Cordialement
Dom


On va donc utiliser les forceps ;-)))
Qu'est-ce qui est exécuté et qu'est-ce qui ne l'est pas ?
Au reste, pourquoi appliques-tu deux formats différents à la même plage ?
Daniel
Copie la plage dans un classeur et mets-la sur www.cjoint.com
"dom" a écrit dans le message de news:

Salut Daniel,

La macro ne plante pas. Elle fait une partie du travail mais pas tout le
travail

Cordialement

Dom


Bonjour.
Tu aurais intérêt à nettoyer ta macro. L'enregistreur note des actions
inutiles. Ceci dit, qu'est-ce qui ne fonctionne pas ? La macro ne fait
rien,
ou elle plante ? et dans ce cas, sur quelle ligne ?
Cordialement.
Daniel
"dom" a écrit dans le message de news:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le
client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro
(macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom














Avatar
Daniel
Utilise :

Sub CMPT3()
'
' CMPT3 Macro
' Macro enregistrée le 05/07/2007 par a0000865
'

'
Dim c As Range
Range("C:D,J:J").Delete
With Range("C3:G37")
.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
For Each c In Range("C3:G37")
c = CDbl(c)
Next c
.NumberFormat = "#.##0"
End With
End Sub

Daniel
"dom" a écrit dans le message de news:

Salut Daniel,

Je t'ai envoyé le fichier excel (excel 2000) avec la macro(cmpte3)
http://cjoint.com/?hgsgA8dG7u
Dans le fichier il y a 3 feuilles 1 feuille réf qui contient des données
brutes extraites d'une autre application, une feuille intitulée macro où
on
veut le résultat de la macro et une feuille fin avec la même mise en forme
à
obtenir (séparateur de milliers + suppression des centimes +.
Au début, faire un copier coller de la plage réf c3 : j37 et supprimer les
colonnes avec le symbole "|" ainsi que la colonne d'intitulés
Si pas clair , n'hésites pas à m'écrire

Cordialement
Dom


On va donc utiliser les forceps ;-)))
Qu'est-ce qui est exécuté et qu'est-ce qui ne l'est pas ?
Au reste, pourquoi appliques-tu deux formats différents à la même plage ?
Daniel
Copie la plage dans un classeur et mets-la sur www.cjoint.com
"dom" a écrit dans le message de news:

Salut Daniel,

La macro ne plante pas. Elle fait une partie du travail mais pas tout
le
travail

Cordialement

Dom


Bonjour.
Tu aurais intérêt à nettoyer ta macro. L'enregistreur note des actions
inutiles. Ceci dit, qu'est-ce qui ne fonctionne pas ? La macro ne fait
rien,
ou elle plante ? et dans ce cas, sur quelle ligne ?
Cordialement.
Daniel
"dom" a écrit dans le message de news:

Bonjour,

J'ai un fichier qui a le code macro suivant (code enregistré par le
client
par l'enregistreur de macros).

Sub CMPT3()
Range("C:D,J:J").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
ActiveWindow.SmallScroll Down:
Range("C3:G37").Select
Range("C37").Activate
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:úlse
ActiveWindow.SmallScroll Down:=-39
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
ActiveWindow.SmallScroll Down:=-33
Selection.NumberFormat = "#,##0"
ActiveWindow.SmallScroll Down:=-33
End Sub

Manuellement, cela fonctionne, mais pas lorsqu'on exécute la macro
(macro
de
mise en forme de données).
Les données sont extraites d'une application externe.

Meric pour vos réponses

Cordialement

Dom
















1 2