Excel défilement automatique

Résolu/Fermé
sofienexcel Messages postés 70 Date d'inscription vendredi 2 janvier 2015 Statut Membre Dernière intervention 20 février 2021 - 19 mars 2015 à 15:37
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 - 24 mars 2015 à 11:25
Bonjour,

je suis nouveau sur vba, Je souhaite que le contenu d'une cellule défile horizontalement et automatiquement dès l'ouverture de mon fichier, j'ai trouvé un code vba mais il nécessite un clic sur bouton pour ce lancer et ce n'est pas pratique pour mon cas

Merci tous pour vos aides habituelles

A voir également:

4 réponses

lanetmel Messages postés 200 Date d'inscription mercredi 24 août 2011 Statut Membre Dernière intervention 15 mars 2018 4
19 mars 2015 à 15:54
Tu n'as pas nécessairement à le mettre sur un bouton. Je ne suis pas experte mais si tu mets le code dans ThisWorkbook
sub Workbook_open ()
ton code
end sub
ça se fera automatiquement à l'ouverture
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
19 mars 2015 à 15:55
Bonjour,

Mettre ceci dans un module:

Sub auto_open()
 t = "ceci est texte défilant dans une cellule......"
 n = 0
 Do While n < 500
  t = Right(t, 1) & Left(t, Len(t) - 1)
  [A1] = t
   w = 0.2
   temp = Timer
   Do While Timer < temp + w
      DoEvents
   Loop
   n = n + 1
 Loop
End Sub



https://www.excel-downloads.com/threads/defiler-un-petit-texte-dans-une-cellule.98252/
0
sofienexcel Messages postés 70 Date d'inscription vendredi 2 janvier 2015 Statut Membre Dernière intervention 20 février 2021
19 mars 2015 à 16:27
Merci, mais ca n'a pas fonctionné à l'ouverture, je dois rafraichir le code avec f5 pour que ca fonctionne, il est à noter que ma feuille est protegée.
Merci cs le Pivert
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
19 mars 2015 à 18:27
Si ta feuille est protégée, il est normal que cela ne fonctionne pas. Déprotège ta feuille au début de la macro auto_open et ensuite à la fin de la macro auto_open protège la à nouveau.
0
sofienexcel Messages postés 70 Date d'inscription vendredi 2 janvier 2015 Statut Membre Dernière intervention 20 février 2021
23 mars 2015 à 09:00
Merci mais pouvez vous m'aider comment ajouter la protection / déprotection dans un tel code
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
23 mars 2015 à 10:29
J'attendais ta réponse!

Voilà:

Option Explicit
Sub auto_open()
Dim t, n, w, temp
 Déprotégertouslesongletsenmêmetemps
  t = "ceci est texte défilant dans une cellule......"
  n = 0
  Do While n < 50 'durée a adapter
   t = Right(t, 1) & Left(t, Len(t) - 1)
   [A1] = t
    w = 0.2
    temp = Timer
    Do While Timer < temp + w
       DoEvents
    Loop
    n = n + 1
  Loop
  Protegertouslesongletsenmêmetemps
 End Sub
Sub Protegertouslesongletsenmêmetemps()
' Protection automatique de toutes les feuilles d'un classeur
Dim Motdepasse As String
Dim wSheet As Worksheet
'Motdepasse = InputBox("Entrer le mot de passe :", "Mettre la protection sur toutes les feuilles", "*****")
Motdepasse = "*****" 'mot de passe à adapter
If Motdepasse = "" Then Exit Sub
For Each wSheet In Worksheets
 wSheet.Protect Password:=Motdepasse, _
        UserInterFaceOnly:=True, _
   DrawingObjects:=False, Contents:=True, Scenarios:= _
        False, AllowFiltering:=True
Next wSheet
End Sub
Sub Déprotégertouslesongletsenmêmetemps()
' Déprotection automatique de toutes les feuilles d'un classeur
Dim wSheet As Worksheet
Dim Motdepasse As String
'Motdepasse = InputBox("Entrer le mot de passe :", "Oter la protection de toutes les feuilles", "*****")
Motdepasse = "*****" 'mot de passe à adapter
If Motdepasse = "" Then Exit Sub
On Error Resume Next
For Each wSheet In Worksheets
 wSheet.Unprotect Password:=Motdepasse
Next wSheet
End Sub

0
sofienexcel Messages postés 70 Date d'inscription vendredi 2 janvier 2015 Statut Membre Dernière intervention 20 février 2021
24 mars 2015 à 10:55
Merci Infiniment le Pivert, mais le code ne fonctionne qu'après éxécution et non à l'ouverture. les macros sont activés: voici le code que j'ai mis après adaptation:
Sub auto_open()
Application.DisplayFullScreen = True
Dim t, n, w, temp
Déprotégertouslesongletsenmêmetemps
t = "...Bulletin de Suivi 2015..."
n = 0
Do While n < 50 'durée a adapter
t = Right(t, 1) & Left(t, Len(t) - 1)
[D5] = t
w = 0.2
temp = Timer
Do While Timer < temp + w
DoEvents
Loop
n = n + 1
Loop
Protegertouslesongletsenmêmetemps
End Sub
Sub Protegertouslesongletsenmêmetemps()
' Protection automatique de toutes les feuilles d'un classeur
Dim Motdepasse As String
Dim wSheet As Worksheet
'Motdepasse = InputBox("Entrer le mot de passe :", "Mettre la protection sur toutes les feuilles", "aaa")
Motdepasse = "aaa" 'mot de passe à adapter
If Motdepasse = "" Then Exit Sub
For Each wSheet In Worksheets
wSheet.Protect Password:=Motdepasse, _
UserInterFaceOnly:=True, _
DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFiltering:=True
Next wSheet
End Sub
Sub Déprotégertouslesongletsenmêmetemps()
' Déprotection automatique de toutes les feuilles d'un classeur
Dim wSheet As Worksheet
Dim Motdepasse As String
'Motdepasse = InputBox("Entrer le mot de passe :", "Oter la protection de toutes les feuilles", "aaa")
Motdepasse = "aaa" 'mot de passe à adapter
If Motdepasse = "" Then Exit Sub
On Error Resume Next
For Each wSheet In Worksheets
wSheet.Unprotect Password:=Motdepasse
Next wSheet
End Sub
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
24 mars 2015 à 11:25
Chez moi cela fonctionne à l'ouverture du classeur!

Le principal c'est que ça fonctionne pour toi


0