Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1368 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  renomer mon fichier excel a l ouverture par deux cellule

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

renomer mon fichier excel a l ouverture par deux cellule

n°2246455
atlantis89​0
Posté le 18-12-2014 à 17:53:36  profilanswer
 

bonjour  
voici mon premier probleme
je voudrais qu a l ouverture de mon fichier excel
le fichier soit renomer par en premier la date du jour qui se trouve en A1 de la feuille active
et ensuite par une reference que l ont rentre au debut par un textbox qui se trouve sur userform
et qui envoie la reference dans la cellule B1 de la feuille active
le nouveau nom devrai resemble a cette exemple 18-12-2014-IS 15250 MA
je vous expliquerais mon deuxieme probleme  
plus tard
merci a lavance de votre reponse

mood
Publicité
Posté le 18-12-2014 à 17:53:36  profilanswer
 

n°2246485
rufo
Pas me confondre avec Lycos!
Posté le 19-12-2014 à 09:26:02  profilanswer
 

Je doute que ça soit possible avec "l'architecture" que tu proposes : comment veux-tu qu'un fichier ouvert puisse changer de nom ? L'OS va refuser vu que le fichier est déjà en cours d'utilisation.
 
Par contre, tu peux faire qu'à l'ouverture de ton fichier Excel, son contenu soit copié dans un nouveau fichier Excel portant le nom que tu veux, auquel t'ajouteras une petite macro qui sera exécutée une fois le "transfert" terminé qui fermera le fichier original et le supprimera.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2246514
atlantis89​0
Posté le 19-12-2014 à 14:21:17  profilanswer
 

bonjour
merci de votre réponse
mais je me suis mal explique  
a  l ouverture du fichier il y a un userform qui apparaît et la les personne devront rentrée le nouveau nom du fichier qui une fois valide le nom ira se mettre dans la cellule B1 et dans A1 il y a un code qui mes d'office la date du jour donc le fichier lui et déjà ouvert depuis quelque secondes donc peut être que la ont pourra le faire  
sinon pouvez vous me donner le code pour faire a votre magniere
merci de votre aide :)  

n°2246515
rufo
Pas me confondre avec Lycos!
Posté le 19-12-2014 à 14:26:01  profilanswer
 

Merci de faire un effort pour vous exprimer d'une manière plus intelligible :/
 
Par ailleurs, ici, on ne donne pas une solution toute faite. L'auteur d'un topic poste son code, dit où ça coince et on l'aide. Mais pas de solution clé en main :o


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2246543
atlantis89​0
Posté le 19-12-2014 à 16:30:51  profilanswer
 

rebonjour
je suis sur se code depuis plusieurs jours mais la je ne comprend pas pourquoi cela ne marche pas donc j avais decider de passer a autre chose  
se que je vous ais parle avant
mais je prefererais garder se code que voici
Sub trouverlechemindufichier()
On Error Resume Next
' trouverlechemindufichier Macro
Dim Chemin As String, Fichier As String
Dim Nom As String
'Dim Filename As String
 
     
    Nom = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & "_" & ActiveWorkbook.Name 'Cet exemple montre comment afficher le nom du classeur actif.
   ''Nom = "NomClasseur_" & Format(Date, "yyyymmdd" ) & "_" & Format(Time, "hhmmss" ) & ".xls"
Chemin = ThisWorkbook.Path 'code pour enregister fichier avec B1
Fichier = Chemin & "\" & Range("B1" ) & ".xltm" 'code pour enregister fichier avec B1
ActiveWorkbook.SaveAs Filename:=Fichier 'code pour enregister fichier avec B1
 'ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & Nom
   ' rep = MsgBox("Votre base de données est sauvegardée sous le nom : " & Nom, vbYes + vbInformation, "Copie sauvegarde classeur" )
Filename = Fichier
 
  'code pour envoyer le fichier filename en C:\Users\etc
    ActiveWorkbook.SaveAs Filename:= _
       "C:\Users\A03GEN-10097\fiches de controle\Filename.xltm", FileFormat:= _
        xlOpenXMLTemplateMacroEnabled, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False ' createBackup pour enregistrer une copie du classeur actif si true
         
     End Sub
le probleme c est qu ils enregistre bien le ou je veut mais pas 1 fichier avec la date mais 3 fichiers 1 exemple date du jour +Filename le 2 fichier exmple la reference en B1 de la feuille active et le 3 eme Filename mes moi je voudrais date du jour+reference B1
pouriez vous m aider je suis vraiment perdu
merci :na:

n°2246553
rufo
Pas me confondre avec Lycos!
Posté le 19-12-2014 à 17:08:39  profilanswer
 

Franchement, c'est vraiment pas facile de comprendre ce que vous écrivez :(


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2246600
atlantis89​0
Posté le 20-12-2014 à 10:43:34  profilanswer
 

Bonjour
Je m’excuse mes pour moi qui le projet  c était simple de le comprendre
Donc je vais vous expliquer le fonctionnement de a a z
En 1) le fichier s’ouvre nome fichier1 aussi tot l ouverture un userform s ouvre
2)il faut remplir un textbox d une référence  et des optionbutton pour dire d aller mettre cette référence dans les formulaire choisi ensuite ont valide par un bouton
3)la référence e doit aussi se mettre dans la cellule B1 de ma feuille MENU
4) j ais oublie que des l ouverture du fichier en A1 Feuille Menu la date du jour se mes automatiquement
5) ont remplie les formulaire choisi
6) une fois remplis ont reviens sur la feuille menu
7 ) ont click sur un bouton enregistrement et  c est la que le code suivant doit enregistrer dans un premier temps le fichier avec un nouveau nom  qui se trouve en A1 c est la date du jour et  
B1 qui est la référence voici un exemple :  20-12-2014-IS 15425 MA
8) Je veux quand premier il se renommé comme l exemple
9 )Et en deuxieme qu il  mon premier chemin que j ais choisi et ensuite celons l année dans la date il ouvrent un des sous dossier qu’ ils comporte comme nom 2014  2015 2016 2017 2018 2019 2020 etc.…  
Et dans chaque sous dossier ils y a des sous sous dossier avec comme reference 0 a 10000, 10001 a 15000, 15001 a 20000 , 20001 a 25000 , 25001 a 30000 etc….
10) Donc la il devrait choisire le sous dossier 2014 et ensuite celon les 5 chiffres de la reference dans le nom 15425 qu il ouvre le sous sous dossier dont la reference est comprise  donc  le 15001 a 20000
11) Et ensuite fermer le fichier
Donc voici mon premer probleme
Quand je click sur enregistrement il va bien s enregistrer dans mon premier chemin "C:\Users\A03GEN-10097\fiches de contrôle
Donc  c etais  ma premiere etape mais déjà  la il m enregistre 3 fichiers le premier renome 20-12-2014 Filename , le deuxieme Filename et le troixieme IS 15425 MA  
Mais mois je veux 1 seule fichier renome 20-12-2014-IS 15425 MA.xlsm e en suite qu il suive les instruction 9) et 10) et 11)
J espere etre un peut plus claire  
Revoici le code pour déjà regler le probleme des 3 fichier en 1 seule
Sub trouverlechemindufichier()
On Error Resume Next
' trouverlechemindufichier Macro
Dim Chemin As String, Fichier As String
Dim Nom As String
'Dim Filename As String
 
     
    Nom = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & "_" & ActiveWorkbook.Name 'Cet exemple montre comment afficher le nom du classeur actif.
   ''Nom = "NomClasseur_" & Format(Date, "yyyymmdd" ) & "_" & Format(Time, "hhmmss" ) & ".xls"
Chemin = ThisWorkbook.Path 'code pour enregister fichier avec B1
Fichier = Chemin & "\" & Range("B1" ) & ".xltm" 'code pour enregister fichier avec B1
ActiveWorkbook.SaveAs Filename:=Fichier 'code pour enregister fichier avec B1
 'ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & Nom
   ' rep = MsgBox("Votre base de données est sauvegardée sous le nom : " & Nom, vbYes + vbInformation, "Copie sauvegarde classeur" )
Filename = Fichier
 
  'code pour envoyer le fichier filename en C:\Users\etc
    ActiveWorkbook.SaveAs Filename:= _
       "C:\Users\A03GEN-10097\fiches de controle\Filename.xltm", FileFormat:= _
        xlOpenXMLTemplateMacroEnabled, Password:="", WriteResPassword:="", _
        ReadOnlyRecommended:=False, CreateBackup:=False ' createBackup pour enregistrer une copie du classeur actif si true
         
     End Sub
Merci de votre aide
:sweat:

n°2246842
rufo
Pas me confondre avec Lycos!
Posté le 24-12-2014 à 13:17:11  profilanswer
 

Rassure-moi : le français n'est pas ta langue natal, right :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  renomer mon fichier excel a l ouverture par deux cellule

 

Sujets relatifs
Excel - Incrémentation Alphanumérique[Résolu]Excel 2010 - remplacer chaine de caractère dans un fichier
boutons ajout date et heure actuelle si la case est vide (excel)Création de script avec lecture d'un fichier texte
taille de police dans une box de texte (moteur de recherche excel vba)[VBA-Excel] Copier-coller sélection à partir d'une recherche
Formulaire web pour accéder à des données sur fichier exceleclatement de fichier excel
Plus de sujets relatifs à : renomer mon fichier excel a l ouverture par deux cellule


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR