Macro s'éxécutant sur fichier xlt

Le
Emile63
Bonjour a tous,

Depuis un modèle de facture (xlt) je souhaite pouvoir écrire dans un
onglet "Registre" masqué, la dernière fois qu'il à été utilisé =
(ouvert-
>copié). Le problème c'est que que le bout de code que j'y ai mis **,
s'inscrit sur le "rejeton" copié (xls) mais pas dans le modèle (xlt),
du coup, je n'ai pas l'historique que je souhaitais avoir par cette
démarche
Quelqu'un aurait une solution ou une idée?


Private Sub Workbook_Open()
Dim i As Long
i = Sheets("Registre").Cells(Rows.Count, 1).End(xlUp).Row + 1
Sheets("Registre").Cells(i, 1) = Now
Sheets("Registre").Cells(i, 2) = Environ("Username")
End Sub

Merci d'avance pour votre aide,
Cordialement,
Emile
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
DanielCo
Le #23076951
Bonsoir.
Pas du tout sûr d'avoir compris. Peut-être en utilisant l'évènement
Workbook_Activate ?
Cordialement.
Daniel


Bonjour a tous,

Depuis un modèle de facture (xlt) je souhaite pouvoir écrire dans un
onglet "Registre" masqué, la dernière fois qu'il à été utilisé (ouvert-
copié). Le problème c'est que que le bout de code que j'y ai mis **,


s'inscrit sur le "rejeton" copié (xls) mais pas dans le modèle (xlt),
du coup, je n'ai pas l'historique que je souhaitais avoir par cette
démarche...
Quelqu'un aurait une solution ou une idée?

---------------------------
Private Sub Workbook_Open()
Dim i As Long
i = Sheets("Registre").Cells(Rows.Count, 1).End(xlUp).Row + 1
Sheets("Registre").Cells(i, 1) = Now
Sheets("Registre").Cells(i, 2) = Environ("Username")
End Sub
---------------------------
Merci d'avance pour votre aide,
Cordialement,
Emile
michdenis
Le #23077381
Bonjour,

Ce que tu demandes est d'écrire des données dans un fichier fermé.
Le fichier fermé étant ton fichier modèle.

Ce type d'opération n'est pas simple ! Voici, tu as 2 fichiers zippés que
tu conserveras dans le même répertoire.
Ce fichier "Exemple - écrire dans un fichier fermé1.xls" contient toutes les procédures
Ce fichier "Exemple - écrire dans un fichier - récipient.xls" celui où l'information sera écrite.

Tu ouvres le fichier qui contient les procédures en maintenant la touche Maj enfoncé
pour voir les macros. Tu fermes...
Maintenant tu fais une ouverture normale du fichier contenant les procédures.
Les données que tu désires s'inscriront dans l'autre fichier et le module MichD
se supprimera et le classeur s'enregistrera.

http://cjoint.com/?0cbvRy4ulvu

Évidemment, tu devras adapter cela à ton environnement et modifier la
valeur des variables en conséquence...

Bonne chance et amuse-toi bien !
;-)

MichD
--------------------------------------------
michdenis
Le #23082811
Ce serait plus facile en utilisant un fichier texte.

Tu inscris sur la premier ligne du fichier :
Nom de l'usager ; La date

à chaque fois que tu ouvres le fichier, le nom de l'usager et la
date s'ajouter au fichier .csv que tu peux ouvrir subséquemment
dans un fichier Excel si nécessaire.

'-----------------------------------------------
Sub Écrire_Dans_Un_Fichier_Texte()

Dim Chemin As String, Fichier As String
Dim Texte As String
Dim X As Long

'********Variables à définir********
Chemin = "c:"
Fichier = "MonFichier.csv"
'***********************************

X = FreeFile
Texte = Environ("Username") & ";" & Now()
'Open Chemin & Fichier For Append Shared As #X
Open Chemin & Fichier For Append As #X
Print #X, Texte
Close #X
End Sub
'-----------------------------------------------

MichD
--------------------------------------------
Emile63
Le #23083791
On 3 feb, 15:13, "michdenis"

Bonsoir MichDenis,

Merci pour ton aide et ce judicieux conseil.
En effet je "ramais" un peu en testant ta précédente proposition, et
cette nouvelle voie me parraît plus simple...
Je testerai tous ça, (je m'absente quelques jours) et te tiens au
courant. :-)
Encore une fois, merci.
Bonne soirée,
Emile
Publicité
Poster une réponse
Anonyme