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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Vba else if probleme

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Vba else if probleme

n°1847858
lokhishot
Posté le 06-02-2009 à 11:49:55  profilanswer
 

bonjour,  
J'essaye de me mettre au vba pour effacer des ligne d'un fichier excel de 200 feuille mais mon code ne marche pas :??:  
 
If A83 = "Script" Then
Rows("84:85" ).Select
    Selection.Delete Shift:=xlUp
ElseIf A84 = "Script" Then
Rows("85:86" ).Select
    Selection.Delete Shift:=xlUp
ElseIf A85 = "Script" Then
Rows("86:87" ).Select
    Selection.Delete Shift:=xlUp
    Else
End If
 
 
 
Je pense que mon problème viens du if then else mais je ne vois pas quoi.
Pouvez vous m'aider?
 
Merci

mood
Publicité
Posté le 06-02-2009 à 11:49:55  profilanswer
 

n°1847875
kiki29
Posté le 06-02-2009 à 12:12:01  profilanswer
 

Salut
Alt+F11
F5 sur macro à exécuter
>>>>> Erreur de compilation : variable non définie

n°1847882
lokhishot
Posté le 06-02-2009 à 12:18:28  profilanswer
 

Désolé mais je ne comprend pas lorsque j'ai fais F5 cella a exécuté seulement un des if  
Merci.

n°1847963
olivthill
Posté le 06-02-2009 à 14:10:41  profilanswer
 

Citation :

If A83 = "Script" Then

Est-ce que A83 est bien le nom d'une variable ?
 
Si A83 est censé être le contenu de la cellule A83, alors il faut écrire le test comme ceci :

If ThisWorkbook.Sheets("Feuil1" ).Cells(83, 1).Value = "Script" Then

n°1847984
lokhishot
Posté le 06-02-2009 à 14:36:05  profilanswer
 

Merci mais je ne comprend ce morceaux de code pourrais tu m'expliquer s'il te plaît ?  
Merci.

n°1848037
olivthill
Posté le 06-02-2009 à 15:36:40  profilanswer
 

Je ne faisais qu'une supposition, mais je me trompe peut-être.
Si A83 est le nom d'une variable alors le code initial est bon.
Si A83 est sensé être le contenu d'une cellule, alors il faudrait récupérer le contenu de la manière que j'ai montrée plus haut (ou d'une autre manière, car il y a souvent plusieurs manières pour faire la même chose).

n°1848558
PMO2
Posté le 08-02-2009 à 12:29:55  profilanswer
 

Bonjour,
 
Une piste avec le code ci-dessous
 
'/// Si une condition est vraie, les autres ne sont pas estimées ///
Sub aa()
If [A83] = "Script" Then
  Rows("84:85" ).Delete Shift:=xlUp
ElseIf [A84] = "Script" Then
  Rows("85:86" ).Delete Shift:=xlUp
ElseIf [A85] = "Script" Then
  Rows("86:87" ).Delete Shift:=xlUp
End If
End Sub
 
'/// Vérifie la condition de toutes les cellules (A85  A84  A83)
'/// et si elle s'avère supprime les lignes concernées
'/// ABSOLUE nécessité de faire du plus grand au plus petit
'/// car si on efface d'abord les lignes 84:85 les lignes en dessous
'/// sont décalées d'un désincrément de 2 lignes
Sub bb()
If [A85] = "Script" Then Rows("86:87" ).Delete Shift:=xlUp
If [A84] = "Script" Then Rows("85:86" ).Delete Shift:=xlUp
If [A83] = "Script" Then Rows("84:85" ).Delete Shift:=xlUp
End Sub
 
 
Cordialement.
 
PMO
Patrick Morange

n°1849663
lokhishot
Posté le 11-02-2009 à 08:47:53  profilanswer
 

Désolé je n'ai pas pu répondre plus tôt je te remercie pour ta réponse je vais tester sa.
merci.


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

  Vba else if probleme

 

Sujets relatifs
[CSS] Probleme centrage texteProbleme mémoire / Ogre3D
problème avec oracleprobleme mysql
problème connection base de données avec eclipse RCPProbleme intégration flash dans mes pages php
Problème pour un exécutable en langage C - SDLprobleme de combinaisons non regulieres
macro Excel VBA : pb dans la création automatique de graphiquesProbleme centrage menu
Plus de sujets relatifs à : Vba else if probleme


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR