Supprimer ligne excel [Résolu]

Signaler
Messages postés
24
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
21 décembre 2007
-
ketchups
Messages postés
24
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
21 décembre 2007
-
Bonjour tous le monde j'espère que vous pourrez éclaire ma lenterne, car la je suis un peu paumée

Déjà je programme sous vb net et j'essaye de supprimer des lignes dans mon fichier excel (celui qui me dit que j'ouvre excel et que je vais dans édition supprimer peut s'abstenir ^^), j'ai réussis à supprimer mes lignes vides et celle qui étais remplie d'espace (vu qu'elle était juste en dessous j'ai magouillé un peu lol)
j'ai utilisé le code suivant :

For

cptExcel = 1
To cpt 
   
Dim eff2
As
Integer ' nouveau compteur pour pouvoir supprimer les fausses lignes vierges qui sont en dessous des vierges
   If obxl.Cells(cptExcel, 1).value =
Nothing
Then
      eff2 = cptExcel - 1
      obxl.Rows(cptExcel).delete()
      obxl.Rows(eff2).delete()
   
End
If
Next cptExcel

par contre j'aimerai pouvoir supprimer des lignes où certains mots, voici un print de ce que j'aimerai pouvoir supprimer. 

donc voila les chaines de caractères que j'aimerais pouvoir supprimer c'est celle en bleu et jaune.

et j'ai essayé de faire un code du style et de l'insérer dans ma boucle

If obxl.rows(cptExcel, 3).value = "ID"
Then
   obxl.Rows(cptExcel).delete()

End
If

j'ai aussi essayé en mettant exactement les espaces que j'ai (parce que y a des espaces...) et j'ai à chaque fois un message d'erreur "Exeption de HRESULT"

j'espère que quelqu'un a une idée

4 réponses

Messages postés
28
Date d'inscription
vendredi 16 juillet 2004
Statut
Membre
Dernière intervention
8 juillet 2008
1
Salut essaye en suppriment les espaces avec la fonction TRIM.
If  TRIM(obxl.rows(cptExcel, 3).value) = "ID"
Then
   obxl.Rows(cptExcel).delete()

EndIf
Moi j'aurai fait plutot avec un range au lieu d'un rows

If  TRIM(obxl.range("C" & cptExcel).value) = "ID"
Then
   obxl.Rows(cptExcel).delete()

EndIf

Caussenard
Messages postés
28
Date d'inscription
vendredi 16 juillet 2004
Statut
Membre
Dernière intervention
8 juillet 2008
1
La fonction trim permet de supprimer les espaces situé avant ou apres ton texte
Exemple "   DIF   " devient "DIF".
Il existe aussi LTrim (supprime les espaces de gauche) Exemple "   DIF   " devient "DIF   " et RTrim (supprime les espaces de droite) Exemple "   DIF   " devient "   DIF".
Le range permet de selectionner une cellule par exemple "A3" ou une plage de cellule par exemple "A3:B6"
Dans ton cas tu voulais recuperer la valeur d'une cellule en colonne C et tu avais la ligne en variable cptExcel, pour contaner les deux on utlise le & soit dans ton cas
"C" & cptExcel
.

Caussenard
Messages postés
24
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
21 décembre 2007

le 2ème de tes codes marches à merveille
c'est super je vais essayé d'adapté sa pour le reste de mon code
par contre pourrait tu m'expliquer un peu ce code car c'est bien beau sa marche mais je ne le comprend pas bien

en tout cas MERCIIIIII
Messages postés
24
Date d'inscription
mercredi 5 septembre 2007
Statut
Membre
Dernière intervention
21 décembre 2007

Merci pour ses explications ^^
je comprends un peu maintenant me manque plus qu'a mettre en pratique