EXCEL : Macro

Résolu
alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   -  
alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

étant néophyte en macros Excel je me tourne une fois de plus vers vous. Je cherche à effacer les données d'un tableau pour l'initialiser avant la nouvelle saisie. Pour cela j'ai réalisé une petite macro que je vous livre :
Sub INIT_DONNEES()
'
' INIT_DONNEES Macro
' Macro enregistrée le 18/06/2008 par Alain
'

'
Sheets("DATA").Select
Range("C10:M500").Select
Selection.ClearContents
End Sub

Cette macro efface bien les données de mon tableau mais le problème c'est qu'elle efface également les formules.
Quelle est la commande qui me permettrait de n'effacer que les données ?

Merci d'avance

Alain
Configuration: Windows XP
Firefox 2.0.0.14

1 réponse

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Tu peux essayer
        Selection.SpecialCells(xlCellTypeConstants).ClearContents
    
    0
    1. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112 > onesdf Messages postés 375 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour Gbinforme
      décidément je vais devoir souscrire un abonnement auprès de toi pour conseil en tous genres. Effectivement ta solution fonctionne à merveille. Merci beaucoup.

      La solution de onesdf associée à celle de Vaucluse + compliquée (si j'ose dire) fonctionnait également.

      Effectivement j'ais posté cette question par erreur sur le forum "Windows" et ne sachant pas comment modifier le forum je l'ai re-posté sur le bon.

      Merci beaucoup à vous tous

      Alain
      0
    2. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112 > alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention  
       
      Re-bonjour à tous,

      Gbinforme vient de me donner la commande souhaitée pour re-initialiser mon tableau et ça marche :
      Selection.SpecialCells(xlCellTypeConstants).ClearContents

      Comment puis-je faire pour conditionner cette commande sur la présence de données dans ce tableau sachant que lorsque je la lance alors que le tableau est vide elle plante.

      Merci d'avance

      Alain
      0
    3. onesdf Messages postés 375 Date d'inscription   Statut Membre Dernière intervention   120 > alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention  
       
      Alors passe par la macro que je t'ai donné dans l'autre post
          For Each Cellule In Selection
              If Left(Cellule.Formula, 1) <> "=" Then '
                  Cellule.ClearContents
              End If
          Next
      
      0
    4. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112 > onesdf Messages postés 375 Date d'inscription   Statut Membre Dernière intervention  
       
      Je ne suis vraiment pas doué dans le choix des forums !!! (... ni dans Excel d'ailleurs)

      merci onesdf. Mais pour ma gouverne il doit bien exister une condition qui permet de ne pas exécuter cette commande si la sélection est vide.

      Alain
      0