cs_david91
Messages postés6Date d'inscriptionlundi 4 octobre 2004StatutMembreDernière intervention 5 octobre 2004
-
5 oct. 2004 à 09:46
cs_david91
Messages postés6Date d'inscriptionlundi 4 octobre 2004StatutMembreDernière intervention 5 octobre 2004
-
5 oct. 2004 à 14:09
Bonjours,
Je dois gérer une base de données pour passer des commandes sur excel.
Sur mon fichier j'ai 3 Feuilles :
Feuille 1 - un tableau avec un Chrono Commandes et toutes les informations qui se recopient sur mes feuilles 2 & 3 (consultation & insertion de données avec menus déroulant).
Feuille 2 - une Demande D'achat interne à l'Entreprise (matrice).
Feuille 3 - un Bon de Commande faxé au Prestataire (matrice).
Voici ma question car je ne connais pas trop les commandes VBA :
J'aimerais créer un petit programme VBA pour incrémenter un n°de commande Automatique sur ma colonne A (du type 2004/01/0001 - ANNEE/MOIS/NUMERO) en cliquant sur un bouton.
Ce Numéro de Commande doit se recopier sur ma feuille 3 cellules D19.
!!! Attention car toute les informations rentrées dans le tableau de ma feuille 1 doivent restées en mémoire afin de les consulter plus tard.
Exemple :
Feuille 1
A B C D
1 N° de Commande Noms Matériel Tel
2 2004/01/0001 Mr Dupont Achat d'un pc 01.XX XX
3 2004/01/0002 Mme XX Achat de Fournitures 02. XX XX
4 ici nouvelle commande, etc .....
Feuille 3
A B C D
1
2
19 2004/01/0001
Voilas je pense avoir expliqué en détail mes besoins.
Merci d'avance pour les personnes qui peuvent me renseigner.
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 5 oct. 2004 à 10:02
salut,
Tu pourrais essayer en ecrivant dans un fichier texte (ou dans le registre) avant chaque fin d execution la valeur de ta variable incrementée.
Et can tu demarre le programe la premiere chose que tu fais c est charger la derniere valeur incremente depuis ton fichier.
Comme ca tu peux continuer la ou tu avais laisser avant.
Voila, je sais pas si ca repond a tes besoins...
Bonne journee
-------------------------------------------------
Essai ca sinon on trouvera autre chose
-------------------------------------------------
cs_david91
Messages postés6Date d'inscriptionlundi 4 octobre 2004StatutMembreDernière intervention 5 octobre 2004 5 oct. 2004 à 13:19
salut
je n'ai pas de programme precis a part celui ci mais il ne va pas :
Private Sub Workbook_Open()
Dim Compteur As Integer
Compteur = Range("A2").Value
Range("A2").Value = Compteur + 1
Range("A1").Value = Format(Date, "yyyymm/") & Compteur
End Sub
J'ai essayer d'enregistrer 2 macros differente acev ce que je veux faire mais sa ne fonctionne pas.
Merci pour ton aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_david91
Messages postés6Date d'inscriptionlundi 4 octobre 2004StatutMembreDernière intervention 5 octobre 2004 5 oct. 2004 à 14:09
Salut,
J'ai enregistré 3 macro sur mon fichier pour vous montrer ce que je veux comme style de programme VBA.
Voici ce que sa donne :
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 05/10/2004 par SAS
'
'
Range("A263").Select
Selection.AutoFill Destination:=Range("A263:A264"), Type:=xlFillDefault
Range("A263:A264").Select
Range("A264").Select
Selection.Copy
Sheets("BDC").Select
ActiveSheet.Paste
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("TEST CHRONO").Select
Range("A265").Select
End Sub
Sub Macro3()
'
' Macro3 Macro
' Macro enregistrée le 05/10/2004 par SAS
'
'
Selection.AutoFill Destination:=Range("A264:A265"), Type:=xlFillDefault
Range("A264:A265").Select
Range("A265").Select
Selection.Copy
Sheets("BDC").Select
Range("D19").Select
ActiveSheet.Paste
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("TEST CHRONO").Select
Range("A266").Select
End Sub
Sub Macro4()
'
' Macro4 Macro
' Macro enregistrée le 05/10/2004 par SAS
'
'
Selection.AutoFill Destination:=Range("A265:A266"), Type:=xlFillDefault
Range("A265:A266").Select
Range("A266").Select
Selection.Copy
Sheets("BDC").Select
ActiveSheet.Paste
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("TEST CHRONO").Select
Range("A267").Select
End Sub
Y a t'il un moyen de reproduire ce programme en boucle en incrémentant un nouveau numéros sur chaque ligne qui suivent en gardant les anciennes données.