VBA Recherche et déplacement de cellule

titw - 4 sept. 2013 à 14:05
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 5 sept. 2013 à 15:46
Bonjour,

J'ai un tableau dans lequel la colonne C correspond à des débits et crédits bancaires.
J'ai donc des cellule avec des "-" et d'autres sans (type "-598.56" / "598.56").
L'objectif serait de déplacer les cellules ne contenant pas des "-" dans la colonne D, toujours sur la même ligne, pour une exportation vers un logiciel de comptabilité.
J'ai fait quelques recherches mais je ne trouve pas comment déplacer ces cellules sur la même ligne...
Si vous avez quelques tuyaux, je suis preneur! :)

2 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 4/09/2013 à 15:20
Bonjour,
on ne déplace pas une cellule, mais son contenu, que l'on affecte à une autre cellule.
Ouvre ton aide VBA sur le mot Offset.
(Range.Offset, propriété)
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
4 sept. 2013 à 16:28
Bonjour,

Teste la macro suivante :
Sub TransfertColonneD()
'Plage contenant les montants à traiter
Dim MaColonneC As Range
Set MaColonneC = Range(\"C2:C100\")

'Boucle sur la plage à traiter
For Each cell In MaColonneC
    'Test si ne commence pas par un signe '-' et n'est pas vide
    If Left(cell.Value, 1) <> \"-\" And cell.Value <> \"\" Then
        'Déplacement de la valeur (couper/coller)
        cell.Select
        Selection.Cut (cell.Offset(rowOffset:=0, columnOffset:=1))
    End If
Next
End Sub


Nb: Pour le "déplacement" j'ai utilisé le Couper/coller.

0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
5 sept. 2013 à 15:46
nb: je ne sais pas pourquoi des antislashs ont été ajoutés au code.. ne pas les mettre hein...
0
Rejoignez-nous