Probleme sous excel
amigo -
je sui larissa, je découvré votre site et il est vraiment primordial pour aider lew gens en difficulté !!
Aujrdui j'ai moi meme un petit probleme que j'espere que vous pourriez le résoudre !!!
Alr je suis sous excel, et je dois automatiser mon tableau de données a partir de la date cad qu'a chaque changement de mois, on doi prendre en compt les jours etc...ceci est réglé enfin je crois mais mon probleme est d'initilaiser des cases précises de mon tableau et je bloque vraiment la dessus !!!
Encor merci d'avance !!!
Configuration: Windows XP Internet Explorer 6.0
- Probleme sous excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Trier un tableau excel - Guide
- Déplacer colonne excel - Guide
74 réponses
- 1
- 2
- 3
- 4
L'enjeu est d'automatiser un tableau Excel au passage d'un mois et d'initialiser certaines cellules précises tout en garantissant que les formules et les mises en couleur restent cohérentes. Des solutions essentielles évoquent l'adaptation des plages utilisées par NBVAL (par exemple NBVAL(F8:BM8) plutôt que NBVAL(B8:BM8)) et la vérification de la cellule nommée « formule » ou son remplacement par une adresse précise. Pour le volet réinitialisation mensuelle, il convient de vider les cases cochées et de restaurer les couleurs d'origine, tout en conservant l'affichage sur six semaines et le déplacement du mois en cours.
Quel est exactement le problème, ça ne marche pas, ou bien tu ne sais pas comment faire. Essaie d'etre plus précis.
A+.
par ex:
1/6/2008 dim lun mar mer jeu.......
1 2 3 4 5.....
et jai mis la fonction "=AUJOURDHUI()", et cela donne
2/6/2008 mar mer jeu ven sam.......
1 2 3 4 5.....
mais ce n'est pas du tout ce que je veux en au final je dois avoir qu'un changemnt de date que lorsque l'on change de mois cad :
1/6/2008 dim lun mar mer jeu.......
1 2 3 4 5.....
après changement de mois:
1/7/2008 mar mer jeu ven sam.......
1 2 3 4 5.....
et 2e probleme : en dessou de ces dates justement j'ai des cases a cocher mais qui doivent etre initialiser a chaque nouveau mois mais on le verra eventuellement plus tard !!!
Walaaaaa, j'espere avoir été assez comprehensive et encore miciii ^^ !!!
Si j'ai bien compris, c'est une sorte de calendrier que tu veux faire.
En A1 tu tapes la date manuellement (exemple 01/06/2008)
De B1 à AF1 c'est le nom du jour automatiquement (dim,lun,mar,...)
De B2 à AF2 c'est le numéro du jour (01,02,03,...)
C'est bien ça?
Si OUI, je peux t'indiquer les formules et les formats des dates à utiliser.
Si NON, reformule ta question.
A+.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question_seulement quand on arrive au mois de juillet et ainsi de suite, que le calendrier se mette a jour
_aussi je dois initialiser les cases de mon calendrier sur une plage bien précise, pour cela je pense qu'il faut une macro mais j'en susi pas sure !!!
Voici les formules à mettre dans ton tableau
La date change automatiquement chaque mois
cellule A1
Formule : =DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI());1)
Format personnalisé : date "jj/mm/aaa"
Le nom du jour change automatiquement
cellule B1
Formule : =A1
Format personnalisé : date "jjj"
cellules B1 à AC1
Formule : =SI(JOUR(B2+1)<JOUR(B2);"";B1+1)
Format personnalisé : date "jjj"
cellules AD1 à AF1
Formule : =SI(AE1="";"";SI(JOUR(AE2+1)<JOUR(AE2);"";AE1+1))
Format personnalisé : date "jjj"
Le numéro du jour change automatiquement (seul le format change)
cellule B2
Formule : =A1
Format personnalisé : date "jj"
cellules B2 à AC2
Formule : =SI(JOUR(B2+1)<JOUR(B2);"";B1+1)
Format personnalisé : date "jj"
cellules AD2 à AF2
Formule : =SI(AE1="";"";SI(JOUR(AE2+1)<JOUR(AE2);"";AE1+1))
Format personnalisé : date "jj"
Si ça marche, on verra pour la suite.
A+.
hey merci bcp bcp bcp amigo, j'ai fait les tests et cela marche à la perfection encore merci.
Ben si tu veux bien on peux toujours résoudre mon 2e probleme, je te réexplique le principe :
alors lorsque l'on passe au mois suivant, je dois avoir une sorte de rafraichissement de la page cad 2 choses :
_ les cases cochées doivent etre vides
_ les cases coloriées doivent retrouvées la meme couleur d'origine car dans mon tableau j'ai des cases de plusieurs couleurs en fait.
^^merci d'avance !!!
Pour le deuxième problème:
Ce qu'il faut faire, c'est enregistrer une macro qui rénitialise la feuille.
Dans le menu Outils -> Macros -> Nouvelle Macro
Ensuite tu fais manuellement les modifs sur ton tableau comme si tu voulais le remettre à zéro. Tu effaces les "X", tu remets les couleurs originales ...
Quand c'est fini tu arrêtes l'enregistrement de la macro. Fais un test, en remettant quelques coches et des cases en couleur. Executes la macro pour voir si tout va bien.
Il faut se reserver une cellule dans laquelle on mettra la date de la dernière réinitialisation, ceci pour éviter l'effacement des données plusieurs fois dans le meme mois. Cette cellule peut etre sur une autre feuille, ou dans une cellule masquée,
à toi de voir ou ça ne gènera pas la mise en forme.
Fais tout ça, on continuera après.
A+.
Sinon, tu peux la poster et je regarderais.
J'ai besoin de savoir le nom de la macro que tu as crée et les références de la cellule réservée à la date de dernière réinitialisation pour compléter la procédure qui s'exécutera automatiquement à chaque ouverture du dossier.
On fait le test si la date en A1 est différente de la date de dernière initialisation alors c'est qu'on a changé de mois et on executera ta macro.
A+.
LA j'en suis a "réussite d'effacement des croix et la remise des couleurs initiales" !!!
Sub Rafraichissement()
'
' Rafraichissement Macro
' Macro enregistrée le 03/06/2008 par Stagiaire
'
' Touche de raccourci du clavier: Ctrl+r
'
Range("C11").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C14").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C18").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C20").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C22").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C22").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C22:AW22").Select
Selection.Interior.ColorIndex = 36
Range("C24").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C27").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C29").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C29:BC30").Select
Selection.Interior.ColorIndex = 36
Range("C32").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C34").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C40").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C40:T40").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C40:BC41").Select
Selection.Interior.ColorIndex = 36
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C12").Select
Selection.Interior.ColorIndex = 44
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 44
Range("C16").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 44
Range("C26").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 44
Range("C37").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C37:BC39").Select
Selection.Interior.ColorIndex = 44
Range("C42").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 44
Range("O13").Select
Selection.Interior.ColorIndex = 35
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("O15").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("Q17").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C13").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C15").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C17").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlToRight)).Select
Range("C17:Q17").Select
Selection.Interior.ColorIndex = 35
Range("C19").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C21").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B23").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B25").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B28").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B31").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B33").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("B35").Select
Range(Selection, Selection.End(xlToRight)).Select
Range("B35:BC36").Select
Selection.Interior.ColorIndex = 35
Range("A36").Select
Range(Selection, Selection.End(xlToRight)).Select
With Selection.Interior
.ColorIndex = 2
.Pattern = xlSolid
End With
Range("C36").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 2
Range("AB34").Select
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("F22").Select
ActiveCell.FormulaR1C1 = "x"
Range("H12").Select
ActiveCell.FormulaR1C1 = "x"
Range("K22").Select
ActiveCell.FormulaR1C1 = "x"
Range("H17").Select
ActiveCell.FormulaR1C1 = "x"
Range("J11").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
Range("C11:AW42").Select
Selection.ClearContents
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 24
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 27
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 30
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 32
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 30
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 24
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 7
Range("C7").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C9").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 36
Range("C8").Select
Selection.Interior.ColorIndex = 35
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C10").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Interior.ColorIndex = 35
Range("C7:AW10").Select
Selection.ClearContents
Range("B7").Select
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 27
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 42
ActiveWindow.ScrollColumn = 41
ActiveWindow.ScrollColumn = 40
ActiveWindow.ScrollColumn = 39
ActiveWindow.ScrollColumn = 38
ActiveWindow.ScrollColumn = 37
ActiveWindow.ScrollColumn = 36
ActiveWindow.ScrollColumn = 35
ActiveWindow.ScrollColumn = 34
ActiveWindow.ScrollColumn = 33
ActiveWindow.ScrollColumn = 32
ActiveWindow.ScrollColumn = 31
ActiveWindow.ScrollColumn = 30
ActiveWindow.ScrollColumn = 29
ActiveWindow.ScrollColumn = 28
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 27
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 32
ActiveWindow.ScrollRow = 34
ActiveWindow.ScrollRow = 35
ActiveWindow.ScrollRow = 36
ActiveWindow.ScrollRow = 37
ActiveWindow.ScrollRow = 38
ActiveWindow.ScrollRow = 39
ActiveWindow.ScrollRow = 40
ActiveWindow.ScrollRow = 41
ActiveWindow.ScrollRow = 42
ActiveWindow.ScrollRow = 43
ActiveWindow.ScrollRow = 44
ActiveWindow.ScrollRow = 45
ActiveWindow.ScrollRow = 46
ActiveWindow.ScrollRow = 47
ActiveWindow.ScrollRow = 48
ActiveWindow.ScrollRow = 49
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 51
ActiveWindow.ScrollRow = 52
ActiveWindow.ScrollRow = 54
ActiveWindow.ScrollRow = 55
ActiveWindow.ScrollRow = 56
ActiveWindow.ScrollRow = 57
ActiveWindow.ScrollRow = 58
ActiveWindow.ScrollRow = 60
ActiveWindow.ScrollRow = 61
ActiveWindow.ScrollRow = 62
ActiveWindow.ScrollRow = 63
ActiveWindow.ScrollRow = 62
ActiveWindow.ScrollRow = 60
ActiveWindow.ScrollRow = 59
ActiveWindow.ScrollRow = 57
ActiveWindow.ScrollRow = 56
ActiveWindow.ScrollRow = 54
ActiveWindow.ScrollRow = 52
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 48
ActiveWindow.ScrollRow = 47
ActiveWindow.ScrollRow = 46
ActiveWindow.ScrollRow = 44
ActiveWindow.ScrollRow = 43
ActiveWindow.ScrollRow = 42
ActiveWindow.ScrollRow = 41
ActiveWindow.ScrollRow = 40
ActiveWindow.ScrollRow = 39
ActiveWindow.ScrollRow = 38
ActiveWindow.ScrollRow = 37
ActiveWindow.ScrollRow = 36
ActiveWindow.ScrollRow = 35
ActiveWindow.ScrollRow = 34
ActiveWindow.ScrollRow = 33
ActiveWindow.ScrollRow = 32
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 11
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 20
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 26
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 24
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 27
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 30
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 32
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 30
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 27
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 24
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollColumn = 25
ActiveWindow.ScrollColumn = 24
ActiveWindow.ScrollColumn = 23
ActiveWindow.ScrollColumn = 22
ActiveWindow.ScrollColumn = 21
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 12
ActiveWindow.ScrollColumn = 10
ActiveWindow.ScrollColumn = 9
ActiveWindow.ScrollColumn = 8
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
End Sub
Dans la macro Rafraichissement tu peux supprimer toutes les lignes
ActiveWindow.ScrollRow = ...
ActiveWindow.ScrollColumn = ...
ça ne sert à rien.
tu peux aussi terminer la macro par
Range("A1").Select
End Sub
c'est pour se positionner au début du tableau.
Voici la macro qui s'executera à chaque ouverture du classeur:
Dans l'editeur VisualBasic, Click droit sur ThisWorkbook -> Code (ou double-click sur ThisWorkbook)
Dans la page de code colle cette procédure
Private Sub Workbook_Open()
Dim Date_Init As Date, Date_jour As Date
Dim Mois_Init As Integer, Mois_Courant As Integer
Dim Rep As Integer
If ThisWorkbook.ActiveSheet.Range("formule").Value = "" Then
Rep = MsgBox("Voulez-vous Initialiser le tableau?", vbQuestion + vbYesNo, "Initialisation")
If Rep = vbYes Then
Call Rafraichissement
MsgBox "Tableau initialisé à la date du " & Date
ThisWorkbook.ActiveSheet.Range("formule").Value = Date
End If
Exit Sub
End If
Date_Init = ThisWorkbook.ActiveSheet.Range("formule").Value
Date_jour = Date
Mois_Init = Month(Date_Init)
Mois_Courant = Month(Date_jour)
If Mois_Courant > Mois_Init Then
Rep = MsgBox("Voulez-vous Initialiser le tableau?", vbQuestion + vbYesNo, "Initialisation")
If Rep = vbYes Then
Call Rafraichissement
MsgBox "Tableau initialisé à la date du " & Date
ThisWorkbook.ActiveSheet.Range("formule").Value = Date
End If
End If
End Sub
Faire le test:
1) mettre la cellule "formule" à vide , sauvegarder, fermer, ouvrir le classeur: un message doit s'afficher, repondre oui
2) sauvegarder, fermer, ouvrir le classeur: aucun message ne doit apparaitre
3) dans la cellule "formule" mettre la date du mois dernier (01/05/2008)
sauvegarder, fermer, ouvrir le classeur: un message doit s'afficher, repondre oui
4) sauvegarder, fermer, ouvrir le classeur: aucun message ne doit apparaitre
A+.
alors je viens de faire le test et à la réouverture il m'affiche le message d'erreur suivant :
Erreur d'exécution '1004'
Erreur d"finie par l'application ou par l'objet
Qu'est-ce que je dus faire ?
ça doit etre la cellule nommée "formule" qui n'est pas définie.
Tu m'avais dit que "formule" était la cellule réservée à la date de dernière initialisation.
2 solutions: soit tu remplace "formule" par l'adresse de la cellule (par exemple "A2"), soit tu nomme cette cellule formule.
Si ça marche toujours pas dit moi exactement sur quelle ligne ça bloque.
A+.
Donne plus de détails, ou bien tu met ton fichier sur
http://www.cijoint.fr/
et tu me poste le lien.
A+.
- 1
- 2
- 3
- 4