Yoyo01000
XLDnaute Occasionnel
Bonjour à tous, je m'en réfère à vos talents pour un problème que je n'arrive à résoudre :
J'aimerais, lorsque j'ouvre un classeur Excel, que la seconde feuille s'affiche avec l'exécution d'une macro étant liée à cette feuille.
J'ai 2 codes dans ce classeur :
le 1er dans [ThisWorbook] étant celui-ci :
Private Sub Workbook_Open()
Select Case MsgBox("Ne pas supprimer les cellules comportant des formules !", vbOKOnly + vbExclamation, "AVERTISSEMENT")
End Select
End Sub
le 2ème dans la feuille 2 :
Sub macro_formules()
Range("B3").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(RC[-1]),"""",R[-1]C+1)"
Range("B3").Resize(998).FillDown
Range("H2").Select
ActiveCell.FormulaR1C1 = "=IF(C6=""AC"",""2"","""")&IF(C6=""ICP"",""3"","""")&IF(C6=""P"",""2"","""")&IF(C6=""Q"",""2"","""")&IF(C6=""S"",""1"","""")&IF(C6=""TM"",""1"","""")"
Range("H2").Resize(999).FillDown
Range("E2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]>0,EDATE(RC[-1],1),"""")"
Range("E2").Resize(999).FillDown
End Sub
J'ai essayé plusieurs solutions mais le problème est que quand je ferme le classeur en étant sur la feuille 2 après enregistrement, j'ai un message d'erreur venant de VBA dès que je l'ouvre à nouveau.
J'aimerais, lorsque j'ouvre un classeur Excel, que la seconde feuille s'affiche avec l'exécution d'une macro étant liée à cette feuille.
J'ai 2 codes dans ce classeur :
le 1er dans [ThisWorbook] étant celui-ci :
Private Sub Workbook_Open()
Select Case MsgBox("Ne pas supprimer les cellules comportant des formules !", vbOKOnly + vbExclamation, "AVERTISSEMENT")
End Select
End Sub
le 2ème dans la feuille 2 :
Sub macro_formules()
Range("B3").Select
ActiveCell.FormulaR1C1 = "=IF(ISBLANK(RC[-1]),"""",R[-1]C+1)"
Range("B3").Resize(998).FillDown
Range("H2").Select
ActiveCell.FormulaR1C1 = "=IF(C6=""AC"",""2"","""")&IF(C6=""ICP"",""3"","""")&IF(C6=""P"",""2"","""")&IF(C6=""Q"",""2"","""")&IF(C6=""S"",""1"","""")&IF(C6=""TM"",""1"","""")"
Range("H2").Resize(999).FillDown
Range("E2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]>0,EDATE(RC[-1],1),"""")"
Range("E2").Resize(999).FillDown
End Sub
J'ai essayé plusieurs solutions mais le problème est que quand je ferme le classeur en étant sur la feuille 2 après enregistrement, j'ai un message d'erreur venant de VBA dès que je l'ouvre à nouveau.