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

compatibilité XL2003-2007

9 réponses
Avatar
Sylian
Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en
leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai une
"incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.

9 réponses

Avatar
Daniel.C
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques
:

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en leur
opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai une
"incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.


Avatar
Sylian
Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque valeur
(soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous XL2003
car je sélectionnait mes valeurs et je cliquais sur un petit losange
jaune qui me demandait de traduire toutes les valeurs en numérique que
là, le losange jaune n'existe pas sous XL2007. J'ai essayé de faire
bouton droit : format de cellule et de forcer en numérique mais rien n'y
fait.

Re-Help ! Comment les rendres numériques afin que le programme s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en
leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai
une "incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.






Avatar
Daniel.C
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est numérique,
si bien que le msgbox me saute à la figure pour chaque valeur (soit
45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous XL2003 car je
sélectionnait mes valeurs et je cliquais sur un petit losange jaune qui me
demandait de traduire toutes les valeurs en numérique que là, le losange
jaune n'existe pas sous XL2007. J'ai essayé de faire bouton droit : format de
cellule et de forcer en numérique mais rien n'y fait.

Re-Help ! Comment les rendres numériques afin que le programme s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en
leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai une
"incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.








Avatar
Sylian
Merci beaucoup mais là encore ça plante sous XL2007
J'ai un message d'erreur : "Incompatibilité de type"
Sylian

Daniel.C a écrit :
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque
valeur (soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous XL2003
car je sélectionnait mes valeurs et je cliquais sur un petit losange
jaune qui me demandait de traduire toutes les valeurs en numérique que
là, le losange jaune n'existe pas sous XL2007. J'ai essayé de faire
bouton droit : format de cellule et de forcer en numérique mais rien
n'y fait.

Re-Help ! Comment les rendres numériques afin que le programme
s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne
en leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai
une "incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.












Avatar
Daniel.C
Mets un classeur exemple sur www.cjoint.com et poste ici l'adresse
générée.
Daniel

Merci beaucoup mais là encore ça plante sous XL2007
J'ai un message d'erreur : "Incompatibilité de type"
Sylian

Daniel.C a écrit :
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque valeur
(soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous XL2003 car
je sélectionnait mes valeurs et je cliquais sur un petit losange jaune qui
me demandait de traduire toutes les valeurs en numérique que là, le
losange jaune n'existe pas sous XL2007. J'ai essayé de faire bouton droit :
format de cellule et de forcer en numérique mais rien n'y fait.

Re-Help ! Comment les rendres numériques afin que le programme s'applique
?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en
leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai une
"incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.














Avatar
Sylian
Voici l'exemple. Je n'ai mis que 1000 lignes plutôt que les 45000
lignes : http://cjoint.com/?epmnuzffp8 (le fichier a été zippé avec
7Zip, c'est un utilitaire gratuit sans quoi il pesait 2Mo même réduit).
Et je rappelle que cela ne me pose des problèmes uniquement sous XL2007
sans quoi ça roule. Merci beaucoup pour l'aide là où je bloque vraiment.
Sylian


Daniel.C a écrit :
Mets un classeur exemple sur www.cjoint.com et poste ici l'adresse générée.
Daniel

Merci beaucoup mais là encore ça plante sous XL2007
J'ai un message d'erreur : "Incompatibilité de type"
Sylian

Daniel.C a écrit :
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque
valeur (soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous
XL2003 car je sélectionnait mes valeurs et je cliquais sur un petit
losange jaune qui me demandait de traduire toutes les valeurs en
numérique que là, le losange jaune n'existe pas sous XL2007. J'ai
essayé de faire bouton droit : format de cellule et de forcer en
numérique mais rien n'y fait.

Re-Help ! Comment les rendres numériques afin que le programme
s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non
numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une
colonne en leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon
2003, impossible de la faire fonctionner correctement sur un
XL2007. J'ai une "incompatibilité de type" qui revient à chaque
fois. Une idée ?

Merci.


















Avatar
Daniel.C
Pas de problème ?
http://www.cijoint.fr/cjlink.php?file=cj200904/cijnhYkd9q.zip
Daniel

Voici l'exemple. Je n'ai mis que 1000 lignes plutôt que les 45000 lignes :
http://cjoint.com/?epmnuzffp8 (le fichier a été zippé avec 7Zip, c'est un
utilitaire gratuit sans quoi il pesait 2Mo même réduit).
Et je rappelle que cela ne me pose des problèmes uniquement sous XL2007 sans
quoi ça roule. Merci beaucoup pour l'aide là où je bloque vraiment.
Sylian


Daniel.C a écrit :
Mets un classeur exemple sur www.cjoint.com et poste ici l'adresse générée.
Daniel

Merci beaucoup mais là encore ça plante sous XL2007
J'ai un message d'erreur : "Incompatibilité de type"
Sylian

Daniel.C a écrit :
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque valeur
(soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous XL2003
car je sélectionnait mes valeurs et je cliquais sur un petit losange
jaune qui me demandait de traduire toutes les valeurs en numérique que
là, le losange jaune n'existe pas sous XL2007. J'ai essayé de faire
bouton droit : format de cellule et de forcer en numérique mais rien n'y
fait.

Re-Help ! Comment les rendres numériques afin que le programme
s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non numériques
:

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une colonne en
leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon 2003,
impossible de la faire fonctionner correctement sur un XL2007. J'ai
une "incompatibilité de type" qui revient à chaque fois. Une idée ?

Merci.




















Avatar
Sylian
Sur XL2003 pas de pb comme je m'en doutais. Par contre il faut que je
déniche un XL2007 pour tester (mon amie est partie avec le PC hébergeant
cette version). Je te tiens au courant très vite. Merci beaucoup.
Une petite question au passage : pourquoi "Var = Cells(1, 17).Address"
en début de macro alors qu'on teste les lignes 11 à 45025 ?

Sylian

Daniel.C a écrit :
Pas de problème ?
http://www.cijoint.fr/cjlink.php?file=cj200904/cijnhYkd9q.zip
Daniel

Voici l'exemple. Je n'ai mis que 1000 lignes plutôt que les 45000
lignes : http://cjoint.com/?epmnuzffp8 (le fichier a été zippé
avec 7Zip, c'est un utilitaire gratuit sans quoi il pesait 2Mo même
réduit).
Et je rappelle que cela ne me pose des problèmes uniquement sous
XL2007 sans quoi ça roule. Merci beaucoup pour l'aide là où je bloque
vraiment.
Sylian


Daniel.C a écrit :
Mets un classeur exemple sur www.cjoint.com et poste ici l'adresse
générée.
Daniel

Merci beaucoup mais là encore ça plante sous XL2007
J'ai un message d'erreur : "Incompatibilité de type"
Sylian

Daniel.C a écrit :
Cells(i, 17).NumberFormat = "general"
Cells(i, 17).Value = -Cells(i, 17).Value
Daniel

Merci beaucoup pour l'astuce et ... en effet : aucune valeur est
numérique, si bien que le msgbox me saute à la figure pour chaque
valeur (soit 45025!!!).
Autant j'avais traduit facilement les valeurs en numérique sous
XL2003 car je sélectionnait mes valeurs et je cliquais sur un
petit losange jaune qui me demandait de traduire toutes les
valeurs en numérique que là, le losange jaune n'existe pas sous
XL2007. J'ai essayé de faire bouton droit : format de cellule et
de forcer en numérique mais rien n'y fait.

Re-Help ! Comment les rendres numériques afin que le programme
s'applique ?

Merci.

Sylian

Daniel.C a écrit :
Bonjour.
Ca fonctionne chez moi. Essaie, pour piéger les valeurs non
numériques :

Sub replica()
Dim i As Long
Var = Cells(1, 17).Address
For i = 11 To 45025
If IsNumeric(Cells(i, 17).Value) Then
Cells(i, 17).Value = -Cells(i, 17).Value
Else
MsgBox Cells(i, 17).Value
End If
Next
Cells(11, 17).Select
End Sub

Cordialement.
Daniel

Bonjour,

J'ai une macro très simple qui me traduit les valeurs d'une
colonne en leur opposé :

Sub replica()
Dim i As Long
For i = 11 To 45025
Cells(i, 17).Value = -Cells(i, 17).Value
Next
Cells(11, 17).Select
End Sub


Mais étrangement, si cette macro fonctionne très bien sur mon
2003, impossible de la faire fonctionner correctement sur un
XL2007. J'ai une "incompatibilité de type" qui revient à chaque
fois. Une idée ?

Merci.
























Avatar
Daniel.C
pourquoi "Var = Cells(1, 17).Address" en

Bonjour.
Tu peux enlever. C'était juste pour récupérer la lettre correspondant à
la colonne 17 (la flemme de compter !)
Daniel