J’ai modifié le fichier GDCalend de Geedee pris dans Excelabo ( n° 220) pour
éviter que sa macro ne se plante quand on ouvre avec Excel son fichier alors
qu’un fichier Excel est déjà ouvert.
La macro modifiée est :
Sub Auto_Open()
reprise:
ActiveWindow.WindowState = xlMinimized
Application.ScreenUpdating = False
typeCal = 1
'Amélioration de la Macro GD par JPV
For i = 1 To 5
On Error GoTo zut
Sheets("dialog1").OptionButtons("OB_1").Value = 1
Next i
Application.ScreenUpdating = True
rep = Sheets("dialog1").Show
If rep Then
Call Calendrier_2x6
Select Case typeCal
Case 1
Call ParMois
Case 2
Call Parsemestre
End Select
GoTo reprise
End If
End
zut:
ActiveWindow.WindowState = xlMinimized
Windows("Calendrier12PhotosPerso1.xls").Activate
Auto_Open
End Sub
Cette amélioration ne marche que si mon fichier ne change pas de nom, le
jour où j’appelle mon fichier "Calendrier12PhotosPerso2.xls" la modif est
inopérante y a-t-il une possibilité pour faire marcher la macro qq soit le
nom du fichier
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Modeste
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est :
Sub Auto_Open()
reprise:
ActiveWindow.WindowState = xlMinimized
Application.ScreenUpdating = False
typeCal = 1
'Amélioration de la Macro GD par JPV
For i = 1 To 5
On Error GoTo zut
Sheets("dialog1").OptionButtons("OB_1").Value = 1
Next i
Application.ScreenUpdating = True
rep = Sheets("dialog1").Show
If rep Then
Call Calendrier_2x6
Select Case typeCal
Case 1
Call ParMois
Case 2
Call Parsemestre
End Select
GoTo reprise
End If
End
zut:
ActiveWindow.WindowState = xlMinimized
Windows("Calendrier12PhotosPerso1.xls").Activate
Auto_Open
End Sub
en tete de module :
Public GDCal as Workbook
dans Auto_open :
set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open :
Private Sub Workbook_Open()
End Sub
plus tard dans les procs
GDCal.Activate
Sheets("xxxxx"). etc....
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Jean-Paul V
Bonjour Modeste Je crois que l’on se retrouve pour la deuxième fois sur ce fichier Merci pour votre réponse ça marche. Je suis très honoré d’avoir la réponse de l’auteur. Ce que vous ne dites pas dans votre réponse c’est que mes instructions complémentaires deviennent inutiles avec vos compléments. Heureusement pour moi, à mon ‘’modeste’’ niveau il me restera des modif indispensables pour que des photo en mode portrait de grande taille puissent également s’intégrer sans modif de la taille avec l’option Semestre et ça vous ne l’aviez pas prévu et toc. Vous avez également oubliez d’affecter les 2 macros qui sont prévues dans votre module aux 2 images de votre boite de dialogue (comme vous le voyez je suis un disciple attentif au travail du maître).
Bonne soirée
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Bonjour Modeste
Je crois que l’on se retrouve pour la deuxième fois sur ce fichier
Merci pour votre réponse ça marche.
Je suis très honoré d’avoir la réponse de l’auteur.
Ce que vous ne dites pas dans votre réponse c’est que mes instructions
complémentaires deviennent inutiles avec vos compléments.
Heureusement pour moi, à mon ‘’modeste’’ niveau il me restera des modif
indispensables pour que des photo en mode portrait de grande taille puissent
également s’intégrer sans modif de la taille avec l’option Semestre et ça
vous ne l’aviez pas prévu et toc.
Vous avez également oubliez d’affecter les 2 macros qui sont prévues dans
votre module aux 2 images de votre boite de dialogue (comme vous le voyez je
suis un disciple attentif au travail du maître).
Bonne soirée
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est :
Sub Auto_Open()
reprise:
ActiveWindow.WindowState = xlMinimized
Application.ScreenUpdating = False
typeCal = 1
'Amélioration de la Macro GD par JPV
For i = 1 To 5
On Error GoTo zut
Sheets("dialog1").OptionButtons("OB_1").Value = 1
Next i
Application.ScreenUpdating = True
rep = Sheets("dialog1").Show
If rep Then
Call Calendrier_2x6
Select Case typeCal
Case 1
Call ParMois
Case 2
Call Parsemestre
End Select
GoTo reprise
End If
End
zut:
ActiveWindow.WindowState = xlMinimized
Windows("Calendrier12PhotosPerso1.xls").Activate
Auto_Open
End Sub
en tete de module :
Public GDCal as Workbook
dans Auto_open :
set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open :
Private Sub Workbook_Open()
End Sub
plus tard dans les procs
GDCal.Activate
Sheets("xxxxx"). etc....
Bonjour Modeste Je crois que l’on se retrouve pour la deuxième fois sur ce fichier Merci pour votre réponse ça marche. Je suis très honoré d’avoir la réponse de l’auteur. Ce que vous ne dites pas dans votre réponse c’est que mes instructions complémentaires deviennent inutiles avec vos compléments. Heureusement pour moi, à mon ‘’modeste’’ niveau il me restera des modif indispensables pour que des photo en mode portrait de grande taille puissent également s’intégrer sans modif de la taille avec l’option Semestre et ça vous ne l’aviez pas prévu et toc. Vous avez également oubliez d’affecter les 2 macros qui sont prévues dans votre module aux 2 images de votre boite de dialogue (comme vous le voyez je suis un disciple attentif au travail du maître).
Bonne soirée
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Jean-Paul V
Re Bonjour
J'ai oublié une question:
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma connaissance je n'ai jamas donné comme Nom Cal13 .
@+
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Re Bonjour
J'ai oublié une question:
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de
Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma
connaissance je n'ai jamas donné comme Nom Cal13 .
@+
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est :
Sub Auto_Open()
reprise:
ActiveWindow.WindowState = xlMinimized
Application.ScreenUpdating = False
typeCal = 1
'Amélioration de la Macro GD par JPV
For i = 1 To 5
On Error GoTo zut
Sheets("dialog1").OptionButtons("OB_1").Value = 1
Next i
Application.ScreenUpdating = True
rep = Sheets("dialog1").Show
If rep Then
Call Calendrier_2x6
Select Case typeCal
Case 1
Call ParMois
Case 2
Call Parsemestre
End Select
GoTo reprise
End If
End
zut:
ActiveWindow.WindowState = xlMinimized
Windows("Calendrier12PhotosPerso1.xls").Activate
Auto_Open
End Sub
en tete de module :
Public GDCal as Workbook
dans Auto_open :
set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open :
Private Sub Workbook_Open()
End Sub
plus tard dans les procs
GDCal.Activate
Sheets("xxxxx"). etc....
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma connaissance je n'ai jamas donné comme Nom Cal13 .
@+
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
La macro modifiée est : Sub Auto_Open() reprise: ActiveWindow.WindowState = xlMinimized Application.ScreenUpdating = False typeCal = 1 'Amélioration de la Macro GD par JPV For i = 1 To 5 On Error GoTo zut Sheets("dialog1").OptionButtons("OB_1").Value = 1 Next i Application.ScreenUpdating = True rep = Sheets("dialog1").Show If rep Then Call Calendrier_2x6 Select Case typeCal Case 1 Call ParMois Case 2 Call Parsemestre End Select GoTo reprise End If End zut: ActiveWindow.WindowState = xlMinimized Windows("Calendrier12PhotosPerso1.xls").Activate Auto_Open End Sub
en tete de module : Public GDCal as Workbook
dans Auto_open : set GDCal = thisworkbook
il serait même préférable d'utiliser au lieu de Auto_Open : Private Sub Workbook_Open()
End Sub
plus tard dans les procs GDCal.Activate Sheets("xxxxx"). etc....
-- -- @+ ;o)))
Modeste
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma connaissance je n'ai jamas donné comme Nom Cal13 .
Il s'agit simplement du nom du classeur d'origine (EXCEL 5 Français) avec macro en français que j'avais été amené à bricoler lors du passage à Excel95 ... cela fait maintenant quelques années... Tu aura remarqué par ailleurs que l'on y utilise une boite de dialogue et non d'un Userform ;o))) Mes quelques modestes...contributions sur Excelabo ont été développées en diletante pour le Fun et gagneraient à etre revues et réactualisées, et valent surtout à titre d'exemples et non d'applications "Clés en mains". Mais étant maintenant hors du circuit professionnel (Pré-retraite), je n'ai plus que rarement l'occasion de réactualiser mon expérience. Mes journées sont occupées ailleurs... Mais je garde toujours un oeil sur MPFE ;o)))
-- -- @+ ;o)))
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de
Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma
connaissance je n'ai jamas donné comme Nom Cal13 .
Il s'agit simplement du nom du classeur d'origine (EXCEL 5 Français) avec macro
en français
que j'avais été amené à bricoler lors du passage à Excel95 ... cela fait
maintenant quelques années...
Tu aura remarqué par ailleurs que l'on y utilise une boite de dialogue et non
d'un Userform ;o)))
Mes quelques modestes...contributions sur Excelabo ont été développées en
diletante pour le Fun et gagneraient à etre revues et réactualisées,
et valent surtout à titre d'exemples et non d'applications "Clés en mains".
Mais étant maintenant hors du circuit professionnel (Pré-retraite), je n'ai plus
que rarement l'occasion de réactualiser mon expérience.
Mes journées sont occupées ailleurs...
Mais je garde toujours un oeil sur MPFE ;o)))
Bonsour® Jean-Paul V avec ferveur ;o))) vous nous disiez :
Pourquoi lorsque je vais dans les Macros au niveau de l'Explorateur de Projets on voit pour ce Fichier Cal13.xls(Calendrier12PhotosPerso.xls) , à ma connaissance je n'ai jamas donné comme Nom Cal13 .
Il s'agit simplement du nom du classeur d'origine (EXCEL 5 Français) avec macro en français que j'avais été amené à bricoler lors du passage à Excel95 ... cela fait maintenant quelques années... Tu aura remarqué par ailleurs que l'on y utilise une boite de dialogue et non d'un Userform ;o))) Mes quelques modestes...contributions sur Excelabo ont été développées en diletante pour le Fun et gagneraient à etre revues et réactualisées, et valent surtout à titre d'exemples et non d'applications "Clés en mains". Mais étant maintenant hors du circuit professionnel (Pré-retraite), je n'ai plus que rarement l'occasion de réactualiser mon expérience. Mes journées sont occupées ailleurs... Mais je garde toujours un oeil sur MPFE ;o)))