Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Problème de syntaxe d'une macro

Orson83

XLDnaute Impliqué
Bonjour à tous,
J'ai réalisé une macro qui ne fonctionne pas correctement. Désolé pour mon niveau en VBA
Si quelqu'un pouvait jeter un coup d'oeil, ce serait sympa
Pour faire simple, je cherche à faire une action dans la feuille 2 qui est Very Hidden à l'ouverture du classeur, je fais mon action à l'intérieur, puis je la remets Very Hidden.
Les actions consistent à renseigner la cellule C10 (ce sera automatique) avec 2 messages, message 1 si la cellule est complétée, message 2 si elle est vide. J'ai inséré aussi une gestion de beug avaec On Error GoTo Fin.

VB:
Option Explicit

Dim Sh As Worksheet

Private Sub Workbook_Open()
On Error GoTo Fin ' Gère une erreur d'exécution macro
Sheets("Feuil2").Visible = xlSheetVisible
  With Sheets("Feuil2")
    If Range("C10") = "" Then
      .Range("C10") = "123"
    If Range("C10") = "" Then
        MsgBox "Cette opération a échoué. Veuillez contacter l'éditeur."
    Else
      MsgBox "Opération réalisée avec succès. Merci de transmettre ce fichier à l'éditeur."
    If Sheets("Feuil2").Visible = True
    Alors
        Sheets("Feuil2").Visible = xlSheetVeryHidden
    End If
    End If
  End With
  ' Si une erreur s'est produite...
Fin:
  MsgBox "Erreur d'éxécution. Veuillez paramétrer les macros sur : Désactiver toutes les macros avec notification."
End Sub

Merci pour votre aide.
Tchotchodu31
 
Solution
@Tchotchodu31, Phil,

coucou François, ton fichier en retour.

code VBA de ThisWorkbook :

VB:
Option Explicit

Private Sub Workbook_Open()
  On Error GoTo Fin ' Gère une erreur d'exécution macro
  ActiveWindow.DisplayWorkbookTabs = False ' N'affiche pas le nom des onglets
  With Worksheets("Feuil2")
    .[C10] = GetSerialNumber(Environ("homedrive")) ' cette cellule est remplie par un procédé automatique
    If .[C10] = "" Then
      MsgBox "Cette opération a échoué. Veuillez contacter l'éditeur."
    Else
      MsgBox "Opération réalisée avec succès. Merci de transmettre ce fichier à l'éditeur."
    End If
  End With
  ActiveWindow.DisplayWorkbookTabs = True ' Affiche le nom des onglets
Exit Sub
  ' Si une erreur s'est produite...

Orson83

XLDnaute Impliqué
Tu as tapé dans le mile soan, bravo !
Merci pour ta contribution.
PS : je vois que tu ne dis pas que des bêtises, tu bosse bien aussi
 

Orson83

XLDnaute Impliqué
« Tu as tapé dans le mille soan, bravo ! »

merci pour ton retour !



« tu bosses bien aussi »

n'est-ce pas ?

soan
J'ai encore du travail, la preuve aujourd'hui, mais j'espère aussi pouvoir aider les autres.
Je l'ai déjà fait sur le forum mais sur des thèmes qui me sont plus accessibles.
Bonne soirée.
Merci à tous ceux qui ont participé à ce phil
Je passe le sujet en résolu.
 

Discussions similaires

Réponses
6
Affichages
394
Réponses
3
Affichages
328
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…