Re : Décaler des cellules si cellule contient valeur numérique
Rebonjour.
PierreJean, j'ai adapté ton code à mon fichier, et c'est à deux doigts de marcher. =)
Tout d'abord, j'ai supprimé la 2e partie du code car vba me renvoyait une erreur:
Sub adapt()
For n = 2 To Range("C" & Rows.Count).End(xlUp).Row
Range("C" & n) = Replace(Replace(Range("C" & n), "-", ""), "_", "")
If IsNumeric(Range("C" & n)) Then
Range("H" & n) = CDbl(Range("C" & n))
Range("C" & n) = 0
End If
Next
For n = 2 To Range("H" & Rows.Count).End(xlUp).Row
Range("H" & n) = CDbl(Replace(Replace(Replace(Range("H" & n), "-", ""), "_", ""), ".", ","))
NextEnd Sub.
Mais ce n'est pas grave, car avec le début du code, j'obtiens le résultat souhaité. Et comme je ne déchiffre pas tout du langage vba, je t'avouerais que je ne comprend pas l'incidence de l'enlever ou pas.
Mon autre problème, plus embêtant, c'est que je dois en fait répéter l'opération pour les colonnes D,E,F,G.
Or, j'execute l'opération pour la colonne C en premier, et ensuite, lorsque je fais de même pour le colonne D, tous les chiffres de "C" copiés en H disparaissent si aucune valeur n'existe en "D".
Exemple:
1) "C11" est copié en H11
2) "D11" étant vide, il va remplacer ensuite la valeur 97.95 par 0.
Donc je pense qu'il faudrait spécifier de déplacer les cellules "numériques", et "non vides"(si possible).
Précision sur tout ce méli-mélo: Je dois remettre en forme un tableau issu d'un pdf, dont toutes les colonnes ont été décalées après copié/collé dans Excel. =(
Merci pour votre aide, j'apprécie grandement.
Laurent.