Excel- erreur de compilation et syntaxe

smiley_face246 -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

Je tente désespérément de créer une base de données dans excel qui se doit d'être simple à la base. Cependant, mon projet devient ambitieux et je me trouve bloquer à une étape stupide.

J'explique mon projet: je tente de créer une base de données qui me permettra de d'avoir dans une feuille toutes mes valeurs et informations sur mes clients. Je voudrais ensuite avoir une autre feuille où je pourrais consulter mes informations, supprimer celles qui ne sont plus nécessaires et faire des modifications... Le tout à partir d'une autre feuille où j'ai créé une bande de menu déroulante qui me permet de consulter mes clients. je tente maintenant d'insérer une macro qui me permettra d'aller supprimer le client que je suis en train de consulte automatiquement. J'ai tenté de faire une cellule liée et de la mettre dans la macro, mais cela ne semble pas fonctionner pour le moment. Voici ma macro:

Sub suppression_enregistrement()
'
' suppression_enregistrement Macro
'

'
Sheets("BD Générale").Select
Rows((Sheets ("Param"). Application. Goto Reference:="param_no_ligne") + 1).Select
Selection.Delete Shift:=xlUp
End Sub

C'est tout simple, mais cela ne fonctionne pas et je suis débutante dans VBA. Je suis ouverte à toutes suggestions!!

SVP j'ai besoin de vos conseils!!!!

Merci! Mille fois!

4 réponses

  1. Utilisateur anonyme
     
    Bonjour,

    En supposant que [ param_no_ligne ] est une référence à une cellule :

    Ex.:

    Sub Suppression()
    
        Dim Ligne As Long
    
        Sheets("Param").Select
        Range("param_no_ligne").Select
        Ligne = ActiveCell.Offset(1, 0).Value
        Sheets("BD Générale").Select
        Rows(Ligne).Select
        Selection.Delete Shift:=xlUp
        Range("A" & Ligne).Select
    
    End Sub
    '
    
    


    Cdt

    Lupin
    0
    1. smiley_face246
       
      Merci Lupin,

      mais maintenant cela écrit :
      Erreur d'exécution << 1004 >>:
      La méthode <<_Default>> de l'objet << Range>> a échoué

      Et c'est la ligne suivante qui est en erreur:
      Rows(Ligne).Select

      Merci,
      Bien à vous,
      0
    2. smileyface246
       
      Bonjour Lupin,

      Je ne sais pas si vous pourriez m'aider... Je ne trouve toujours pas la solution au problème précédent. L'erreur ne cesse de s'afficher.

      Merci.
      0
  2. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Ca pourrait te donner des idées
    A+
    0
    1. smiley_face246
       
      Oui merci, mais les macros ne fonctionnent pas toutes...
      0
  3. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Pour couper cour...
    A mettre dans un module général (OBLIGATOIRE)
    Option Explicit
    Public param_no_ligne as Long
    
    Sub SupprimeLigne() 
        'Pour le teste 
        param_no_ligne = 6 
         
        Sheets("Feuil1").Rows(param_no_ligne).Delete 
    End Sub

    C'est aussi simple que ça !!
    A+
    Edit : Pour le N° de ligne ?
     param_no_ligne = ActiveCell.Row + 1


    Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
    NOTE : Je ne répond pas aux MP pour les questions techniques.
    0