Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1354 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  suppression ou cacher ligne sur bouble infini[résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

suppression ou cacher ligne sur bouble infini[résolu]

n°1443091
GillooZ
un reportage de filip loulou
Posté le 15-09-2006 à 15:11:37  profilanswer
 

Bonjour à tous, voila mon problème :
 
Dim cpt As Integer
 
With Worksheets("enr_incidents" )
 
Do
    cpt = cpt + 1
Loop Until IsEmpty(.Range("A" & cpt))
 
Do
    If .Range("AJ" & cpt) = "Invalide" Then
        .Range("A" & cpt).EntireRow.Hidden = True
    End If
Loop Until (cpt = 2)
 
End With
 
Qd je lance ce code, excel commence a calculer et plante ou als la boucle ne se finit jamais, j'ai essayé de remplacer la ligne qui cache les lignes par une qui supprime ( .EntireRow.Delete) mais même résultat.
 
Pourquoi mon programme ne s'arrete il pas ?


Message édité par GillooZ le 18-09-2006 à 08:48:17
mood
Publicité
Posté le 15-09-2006 à 15:11:37  profilanswer
 

n°1443099
MagicBuzz
Posté le 15-09-2006 à 15:17:02  profilanswer
 

c'est quoi ce until (cpt=2) ?
vu que tu ne changes jamais la valeur de cpt, je ne vois pas en effet comment ça peut ne pas partir en live...

n°1443106
GillooZ
un reportage de filip loulou
Posté le 15-09-2006 à 15:23:13  profilanswer
 

ouui pardon il manque un cpt = cpt - 1 avant la fin de la boucle
 
la mon code marche avec EntireRow.Hidden = True
mais si je veux supprimer les lignes avec EntireRow.Delete
 
Le programme commence a supprimer les lignes et plante au bou de qq secondes  
 
pk ?

n°1443114
MagicBuzz
Posté le 15-09-2006 à 15:30:21  profilanswer
 

quand tu fais un DELETE, n'incrémente pas ton CPT

n°1443165
seniorpapo​u
Posté le 15-09-2006 à 16:40:50  profilanswer
 

Bonjour,
tu ne mets toujours pas au début cpt=0?
as-tu essayé un "pas à pas" pour voir?
Cordialement
 

n°1443224
galopin01
Posté le 15-09-2006 à 18:50:18  profilanswer
 

bonjour,
Tu nous en a déjà fait toute une page sur ce thème...
Rows(i).Delete fonctionne très bien après c'est à toi d'ajuster tes conditions.
 
Si tu testes cette macro elle supprime toutes les lignes ou la colonne 1 est vide

Code :
  1. Sub test()
  2. 'Détermination de la dernière ligne
  3. i = Cells(65536, 1).End(xlUp).Row
  4. 'Pour chaque ligne de la dernière à la ligne 2
  5. For k = i To 2 Step -1
  6. 'Effacer la ligne si la colonne A est vide
  7. If Cells(k, 1) = "" Then Rows(k).Delete
  8. Next
  9. End Sub

Après tu ajustes avec tes conditions...
 
A+


Message édité par galopin01 le 15-09-2006 à 18:51:46
n°1443872
GillooZ
un reportage de filip loulou
Posté le 18-09-2006 à 08:48:03  profilanswer
 

c'est bon merci j'ai résolu le problème merci !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  suppression ou cacher ligne sur bouble infini[résolu]

 

Sujets relatifs
Cacher/masqer <div>[Résolu][Qt] QProcess lancés en boucle - started() et finished()
Récupérer le Full Name d'un utilisateur réseau en VBA [Résolu]afficher le n° de la ligne de code
selection Listbox avec multiselected [résolu]Problème ligne de base CSS -> IE et Firefox différents ...
[RESOLU] Evénement onclick()[Résolu] Mon script d'ouverture de pop-up ne doit pas être bon !
[Access] Affichage des nombres dans les reports Access [Résolu][RESOLU] Dégradé 100% hauteur et largeur ?
Plus de sujets relatifs à : suppression ou cacher ligne sur bouble infini[résolu]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)