Excel défilement automatique

Résolu
sofienexcel Messages postés 70 Date d'inscription   Statut Membre Dernière intervention   -  
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   -
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   Statut Membre Dernière intervention   4
 
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   Statut Contributeur Dernière intervention   729
 
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   Statut Membre Dernière intervention  
 
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   Statut Contributeur Dernière intervention   729
 
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   Statut Membre Dernière intervention  
 
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   Statut Contributeur Dernière intervention   729
 
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   Statut Membre Dernière intervention  
 
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   Statut Contributeur Dernière intervention   729
 
Chez moi cela fonctionne à l'ouverture du classeur!

Le principal c'est que ça fonctionne pour toi


0