Ma première prog en VBA avec 3 opérations

Bonjour

Même si la création de tableau n'a plus de secret je ne m'étais jamais lancé dans la prog en VBA

Pour cette première je voulais créer un bouton en feuille 1 capable de :

  • vider des cellules sur plusieurs feuilles du classeur.
  • fermer le fichier sans enregistrer ni afficher la boite de dialogue
  • de faire en sorte de toujours à l'ouverture démarrer sur la même feuille.

Sub vider_cellules()

'

' vider_cellules Macro

' Private Sub CommandButton1_Click()

Sheets("Laser").Select

Range("A3,A5,B10:C15,B17:C17,B21:C25,B27:C27,E4,F4,J4,K4,L4,M4,N4,G4,H4,I4,E10:N30,E36:N39,P2").Select

Selection.ClearContents

Sheets("BE - BM").Activate

Sheets("BE - BM").Select

Range("C8").Select

Selection.ClearContents

Sheets("Pliage").Activate

Sheets("Pliage").Select

Range("C9,C12,C15,C18,C22,C31,C33").Select

Selection.ClearContents

Sheets("Roulage").Activate

Sheets("Roulage").Select

Range("C8,C12").Select

Selection.ClearContents

Sheets("taraudage Machine").Activate

Sheets("Taraudage Machine").Select

Range("C8,C17,C19").Select

Selection.ClearContents

Sheets("Soud TIG - MIG").Activate

Sheets("Soud TIG - MIG").Select

Range("C8,C11,C14,C18,G18,G14,G11,G8").Select

Selection.ClearContents

Sheets("Meulage").Activate

Sheets("Meulage").Select

Range("C9,C12,G12,G9").Select

Selection.ClearContents

End Sub

Private Sub Workbook_close()

Sheets("SheetLaser").Select

End Sub

Pivate SubCloseBook()

Application.DisplayAlerts = False

ActiveWorkbook.Close

Application.DisplayAlerts = True

End Sub

certaine chose fonctionnent mais pas tout pouvez-vous regarder mon programme et me dire où il y a des problèmes

pour la petite histoire je viens à 56 ans de prendre le poste de responsable informatique et de l'ERP maison Workplan

il n'est jamais trop tard pour apprendre

merci d'avance

Cordialement

Patrick

Bonjour. En effet il n'est jamais trop tard. Félicitations pour le poste.

2 choses : est-il possible d'envoyer ton fichier? à lire comme ça une macro c'est un peu hardu, je ne suis pas un méga-pro excel comme MFerrand, Banzai et les autres ^^

Sinon comme ça à la lecture sans détail :

Sub vider_cellules()

Sheets("Laser").Select
Range("A3,A5,B10:C15,B17:C17,B21:C25,B27:C27,E4,F4,J4,K4,L4,M4,N4,G4,H4,I4,E10:N30,E36:N39,P2").ClearContents
Sheets("BE - BM").Select
Range("C8").ClearContents
Sheets("Pliage").Select
Range("C9,C12,C15,C18,C22,C31,C33").ClearContents
Sheets("Roulage").Select
Range("C8,C12").ClearContents
Sheets("Taraudage Machine").Select
Range("C8,C17,C19").ClearContents
Sheets("Soud TIG - MIG").Select
Range("C8,C11,C14,C18,G18,G14,G11,G8").ClearContents
Sheets("Meulage").Select
Range("C9,C12,G12,G9").ClearContents
End Sub

Après le mieux c'est de ne pas utiliser select car tu perd du temps et des ressources, tu met :

With Sheets("BE - BM")
       .Range("C8").ClearContents
End With

Ou encore encore mieux, ne pas utiliser de "Range" mais "Cells(numéro de ligne, numéro de colonne) :

With Sheets("BE - BM")
       .Cells(8, 3).ClearContents
End With

Pour la suite il faudrait vraiment un fichier je pense pour que je t'aide

Bonjour et merci pour la reponse

Je t'envoie le fichier

Cordialement

Rechercher des sujets similaires à "premiere prog vba operations"