Enregistrer sous

Résolu
Lameche15 Messages postés 156 Date d'inscription mardi 9 septembre 2008 Statut Membre Dernière intervention 15 septembre 2022 - 2 déc. 2008 à 16:41
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009 - 3 déc. 2008 à 17:51
Bonjour,

J'ai créé une barre de menu perso avec un bouton qui devrait pouvoir me servir à enrgistrer sous un dossier connu un fichier en fonction d'un numéro que je récupère de mon application.
Il s'agit d'un suivi d'activité, dans mon programme je récupère le numéro de la semaine en cours et je voudrais que dans mon dossier j'enregistre le fichier sous forme Semaine"num".xls
Si qqn sait comment faire ca, je le remercie d'avance de me transmettre un peut de son savoir.

Merci A+

8 réponses

whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
3 déc. 2008 à 09:08
Correction j'ai écrit un peu vite ... désolé....

ActiveWorkbook.SaveAsFilename:= "Semaine" & Semaines & ".xls", FileFormat:=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False

Une variante:

Dim Nomfichier as string

NomFichier = "Semaine" & Semaines & ".xls"

ActiveWorkbook.SaveAsFilename:= NomFichier , FileFormat:=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False

Tous ca toujours dans le cas où la variables "Semaines" contient le N° de ta semaine.

LC
3
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
2 déc. 2008 à 18:19
Lameche15,

Ton message manque cruellement d'information... néanmoins voilà une ligne de code qui je pense correspond a ce que tu recherches.... à toi de faire le code qui va autour :)

ActiveWorkbook.SaveAs Filename:= "MonFichier.xls", FileFormat:=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False

Cette ligne de code est réaliser sous office2007... donc à adapter si nécessaire (le file format ici est sur compatible office 2003...)

LC
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
2 déc. 2008 à 21:25
salut,

et pour le NUM, précisément :



<hr />
'    RECUPERER LE NUMERO DE LA SEMAINE
'    http://www.codyx.org/snippet_recuperer-numero-semaine_61.aspx#1666
'    Posté par [ Renfield ] le 04/01/2008
<hr />





'#
http://fr.wikipedia.org/wiki/ISO_8601#Num.C3.A9ro_de_semaine




Public Function
Week(ByVal
vDate As Date) As Integer
Dim
dThursday As Date
Dim dMonday As
Date
Dim nResult As Single
   '#
Calculer le jeudi de la même semaine que la date cherchée.
 
 '# On calculera le numéro de semaine de ce jeudi pour
être sûr de compter dans la
   '# bonne
année sans test particulier. (Ce jeudi peut tomber l'année précédente ou
suivante,
   '# c'est tout
l'intérêt.)
   dThursday = DateAdd("D", 4 -
Weekday(vDate, vbMonday), vDate)
   
   '# On
considère le 4 janvier de la même année que ce jeudi
   dMonday =
DateSerial(Year(dThursday), 1, 4)
   
   '# On
calcule le lundi de la même semaine que ce 4 janvier (identifiant ainsi le début
du comptage;
   '# noter que ce lundi
peut lui même tomber l'année encore avant: peu importe)
 
 dMonday = DateAdd("D", 1 - Weekday(dMonday, vbMonday), dMonday)
 
 '# On calcule le nombre de jours écoulés entre nos deux
dates particulières (ce jeudi et ce lundi).
   '# On divise par 7 (arrondir à l'entier supérieur). On a le
résultat voulu.
   nResult = Abs(DateDiff("D", dThursday, dMonday)) / 7
   If
Fix(nResult) <> nResult Then
       Week = nResult + 1
   Else
       Week = nResult
   End If
End Function







++

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
Lameche15 Messages postés 156 Date d'inscription mardi 9 septembre 2008 Statut Membre Dernière intervention 15 septembre 2022
3 déc. 2008 à 08:57
Toutes mes excuses si mon message n'a pas été suffisament clair. En fait j'ai déjà récupéré mon numéro de semaine. En fonction de ce numéro j'aimerais enregistrer automatiquement mon fichier sous la forme:
Semaine13.xls par exemple si le numero que j'ai récupéré est le 13.
En tout cas merci pour votre réactivité
A+
0

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

Posez votre question
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
3 déc. 2008 à 09:04
Lameche15,

je t'ai donné la ligne de code dont tu as besoin au dessus

Admettons que ton N° de semaine soit stocké dans la variable "Semaines", ta ligne sera alors:

ActiveWorkbook.SaveAsFilename:= "MonFichier.xls" & Semaines,
FileFormat:=xlExcel8, Password:="", WriteResPassword:="",
ReadOnlyRecommended:=False, CreateBackup:=False

LC

Pensez à réponse acceptée
0
Lameche15 Messages postés 156 Date d'inscription mardi 9 septembre 2008 Statut Membre Dernière intervention 15 septembre 2022
3 déc. 2008 à 10:24
Ah maintenant on est d'accord, je ne savais pas bien ou placer le &..., mais la c bon car tu l'avais oublié sur ton premier message, en tout cas je te remercie infiniement pour la rapidité de tes réponses grace à toi je vais pouvoir finaliser mon application et ainsi changer la vie de ma collectivité. C'est mon chef qui va être heureux.

Merci beaucoup, surement à une prochaine fois car maintenant que j'ai gouté à la prog vba je doute pouvoir m'en passer.

A+
0
Lameche15 Messages postés 156 Date d'inscription mardi 9 septembre 2008 Statut Membre Dernière intervention 15 septembre 2022
3 déc. 2008 à 14:44
Salut, c'est déja re-moi,

Je fais du zèle mais bon tant qu'a faire qqch autant que ce soit propre.
J'écris ceci:
cellule.Value = Range("K5").Value
Afin d'écrire dans ma plage de cellule sélectionnées (cellule) la valeur inscrite dans la cellule K5, seulement j'aimerais ne récupérer que la première lettre de K5
et par le code vba
pas en mettant une formule dans mes cellules de destination du style = GAUCHE(A1;1)
car je ne connais pas à l'avance ces cellules

Merci d'avance
0
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
3 déc. 2008 à 17:51
Lameche15,

Pour un problème différent merci de faire un nouveau sujet ...

mais bon pour éviter que tu restes bloqué je te donne quand même une réponse mais pense à rédiger un nouveau sujet que tu accepteras automatiquement afin que d'autre personnes puissent aussi bénéficier de ces infos.

Celule.Value = Left(Range("K5").value,1)

LC
0
Rejoignez-nous