Supprimer ligne excel [Résolu]

ketchups 24 Messages postés mercredi 5 septembre 2007Date d'inscription 21 décembre 2007 Dernière intervention - 10 oct. 2007 à 09:01 - Dernière réponse : ketchups 24 Messages postés mercredi 5 septembre 2007Date d'inscription 21 décembre 2007 Dernière intervention
- 10 oct. 2007 à 13:52
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
Afficher la suite 

4 réponses

Répondre au sujet
cs_Caussenard 28 Messages postés vendredi 16 juillet 2004Date d'inscription 8 juillet 2008 Dernière intervention - 10 oct. 2007 à 11:36
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Caussenard
cs_Caussenard 28 Messages postés vendredi 16 juillet 2004Date d'inscription 8 juillet 2008 Dernière intervention - 10 oct. 2007 à 13:21
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Caussenard
ketchups 24 Messages postés mercredi 5 septembre 2007Date d'inscription 21 décembre 2007 Dernière intervention - 10 oct. 2007 à 12:19
0
Utile
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
Commenter la réponse de ketchups
ketchups 24 Messages postés mercredi 5 septembre 2007Date d'inscription 21 décembre 2007 Dernière intervention - 10 oct. 2007 à 13:52
0
Utile
Merci pour ses explications ^^
je comprends un peu maintenant me manque plus qu'a mettre en pratique
Commenter la réponse de ketchups

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.