Worksheet & date

cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006 - 20 févr. 2006 à 10:58
cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006 - 20 févr. 2006 à 15:25
Bonjour amis programmeurs, alors j' ai une petite question:

Je suis en train d'essayer de programmer sous vb 6.3, et ma question se tourne sur les workshheets et les dates:

je voudrai creer automatiquement une nouvelle worksheet à chaque debut de moi, la workshhet porterai le numero du mois ou son nom (Janvier, Fevrier etc...)

Avez vous un code pour gerer automatiquement la creation de worksheets avec la date du mois en cours? ( et enprime en copiant collant differentes cellules qui compose mon tableau....)

D'avance merci

9 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2006 à 11:15
Salut,

Regarde si ce qui suit pourrait t'aider:

Dim ThisSheet As Worksheet
Set ThisSheet = ThisWorkbook.Sheets.Add
ThisSheet.Name = MonthName(Month(Date))

Ceci te creer une nouvelle feuille possédant le nom du mois en cours.
@+
Julien
____________________________
Ne pas oublier:
- le "réponse acceptée"
</SPA< body>
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
20 févr. 2006 à 13:54
Cependant, il faut tester, au préalable, que la feuille n'existe pas déjà !
De plus, selon ce que tu désires faire, il faudra peut-être inclure également la gestion des années!

Enjoy

<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0
cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006
20 févr. 2006 à 14:48
ok merci pour votre aide, dc maintenant comment je faits pour tester si cette page existe?? j'ai essayé ca:

Public Function wdate()


Dim ThisSheet As Worksheet


Set ThisSheet = ThisWorkbook.Sheets.Add


If ThisSheet.Name <> MonthName(Month(Date)) Then


ThisSheet.Name = MonthName(Month(Date))


Else


End If


End Function

Mais bien sur, cela ne marche pas. (Je suis asses novice en vba comme vous pouvez le constater)

- Pour l'anne dois je simplemenr rajouter MonthName(Month(Date), (year(date))?

- et pour finir, en faisant une fonction, pour verifier ces worksheet, pui je l'appeler des que j'ouvre mon menu principale, dans le auto open?

D'avance merci le VBA professionnels
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2006 à 14:55
Re,

Essaie ce qui suit.
Mais ceci n'effectue qu un test primaire

Dim ThisSheet As Worksheet
Dim FeuilleExiste As Boolean
For Each ThisSheet In ThisWorkbook.Sheets If ThisSheet.Name MonthName(Month(Date)) Then FeuilleExiste True
Next


If FeuilleExiste Then
MsgBox "Cette feuille existe deja"
Else
Set ThisSheet = ThisWorkbook.Sheets.Add
ThisSheet.Name = MonthName(Month(Date))
End If

@+
Julien
_________________________________________________________
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2006 à 14:57
Re,
Petite correction pour ne pas continuer a tester les feuilles si on trouve deja le nom:
If ThisSheet.Name MonthName(Month(Date)) Then FeuilleExiste True

Deviendrait

If ThisSheet.Name = MonthName(Month(Date)) Then
FeuilleExiste = True
Exit For
End if

Voili

@+
Julien
_________________________________________________________
0
cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006
20 févr. 2006 à 14:58
merci je vais tester,

je vous tiens au courant si cela fonctionne ds mon cas

a tous c cool merki !!!!!
0
cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006
20 févr. 2006 à 15:14
ok julien le bout de code marche,

maintenant une foie que la worksheet est nommée, je voudrais dans mes codes travailler with worksheet(" thissheet"), en fonction du mois de l'annee. pour l'instant c'est with worksheet("janvier"). je souhaiterai que janvier devienne une variable, dans ce cas :thissheet. mais je ne sais pas comment l'utiliser...

je ne sais pas si jai ete asses claire lol ....

merki
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 févr. 2006 à 15:21
Re,

Fais toi un tableau avec le nom des mois de l'annee:

Dim i As Integer
Dim Mois(1 To 12) As String
For i = 1 To 12
Mois(i) = MonthName(i)
Next

Et ensuite va chercher la feuille comme suit:

Thisworkbook.Sheets(Mois(X)) pour avoir la feuille désiree.

Si c est pas du tout ce que tu souhaitais, expliques toi un peu mieux

@+
Julien
N'oubliez pas: Moteur de recherche et
Réponse acceptée
0
cs_Negwesh Messages postés 8 Date d'inscription vendredi 27 janvier 2006 Statut Membre Dernière intervention 28 février 2006
20 févr. 2006 à 15:25
merci julien pour tout.

jvai voir ca, je te tiens au courant

merki pour tout
0
Rejoignez-nous