Transformer le fichier joint en formulaire qui alimentera une BdD

agadio

XLDnaute Nouveau
Bonjour,

Je vous joins un fichier que j'ai "developpé" au fil du temps et que je souhaite transformer

en effet, il est particulierement lourd a gerer.

du coup, je pensais utiliser un "masque" comme sur l'onglet Janvier (page1), sachant qu'apres ce masque se repete indefiniment

Ceci dit, l'idee est de stocker les donnees pour alimenter les onglets Prod, Bilan et analyse arrets

Enfin, le top serait de pouvoir moduler egalement le nombre de ligne de production (actuellement 2)

N'etant pas un King Kong du VB, votre aide me sera certainement tres utile pour progresser !
merci d'avance

Cordialement
Agadio

PS : j'ai du supprimer des onglets mensuels pour pouvoir passer, mais par defaut chaque mois a son onglet a l'heure actuelle
 

Pièces jointes

  • Rdts simplifiés2012.zip
    281.7 KB · Affichages: 76
  • Rdts simplifiés2012.zip
    281.7 KB · Affichages: 77
  • Rdts simplifiés2012.zip
    281.7 KB · Affichages: 76
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Bonsoir


Combien de fois faudra-t-il le spécifier ?
noway.jpg

Donc en attendant une PJ anonymisée, je vais éteindre ma lessive ;)
 

Staple1600

XLDnaute Barbatruc
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

RE


Pour comprendre le pourquoi de mon premier message, je t'invite à lire cette discussion initiée par Celeda (que je salue au passage)
https://www.excel-downloads.com/threads/fichier-anonyme.175465/

PS : relire la charte du forum te permettrai aussi d'éviter les faux pas sur XLD ;)

PS2: Merci d'avoir modifiée ta PJ.

En guise de remerciement, l'illustration de la non nécessité d'utiliser les Select
(cela permet d'alléger le code VBA de manière assez significative ;) )
Code:
Sub Efface()
    Sheets("Tampon").Columns("A:F").ClearContents
    Sheets("Analyse arrets").Select
End Sub
 
Dernière édition:

agadio

XLDnaute Nouveau
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Ben.... merci !!!

Je vais lire tout cela avec grande attention

Par contre, peut etre me suis mal exprimé dans mon premier post, mais la nature de ma demande concerne le fait que plutot que d'avoir 12 onglets avec 21 tableaux redondants, je souhaite faite un masque (formulaire) dont les donnees iront incrementer une base de donnees qui me permettra ensuite de retrouver mes syntheses mensuelles (page 22 de chaque onglet) plus les onglet Bilan ....

De plus, le fait d'indexer les cellules me prend un temps fou

enfin, le fin du fin serait de pouvoir ajouter 1 à n ligne de production par la suite

Une idee, un conseil ???

Merci
 

Staple1600

XLDnaute Barbatruc
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Re


Voici vers quoi je tendrai
Code:
Sub vExtractdonneesarret(fd$, ParamArray fs() As Variant)
Dim adrr, i As Byte
adrr = Array("A1", "D1")
For i = 0 To UBound(fs)
Sheets(fs(i)).Range("A1:C5").Copy Sheets(fd).Range(adrr(i))
Next i
End Sub
Code:
Sub a()
vExtractdonneesarret "Feuil1", "Feuil2", "Feuil3"
End Sub
Tu comprends la logique?

(Si on adapte à ton code)
Code:
Sheets("Janvier").Select
    Range("BF3:BK317").Select
    Selection.Copy
    Sheets("Tampon").Select
    Range("A2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Cela pourrait donné
Code:
Sub a()
 vExtractdonneesarret "Tampon", "Janvier", "Février" etc ...
 End Sub
Il faudrait adapter adrr avec tes adresses de cellules de recopie
et remplacer A1:C5 par BF3:BK317

Dis moi si cela t'intéresse, sinon inutile que j'aille plus loin sur cette piste là.

PS: Je ne prends rien mal, je suis simplement direct.
 
Dernière édition:

agadio

XLDnaute Nouveau
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

en fait, ce ne sont pas les donnees d'arret, pannes etc (colonne BF à BQ) que je veux traiter

Mais le tableau de base (A1:N42) que je souhaite "transformer" en formulaire
Cela m'evitera de le repeter 12 x 21 fois dans le fichier

Un formulaire , une Base de donnees ou tout va s'incrementer a la validation du formulaire du jour, et hop !

Ps : moi aussi je suis direct ... mais nouveau !!!
 

Staple1600

XLDnaute Barbatruc
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Re

Un formulaire , une Base de donnees ou tout va s'incrementer a la validation du formulaire du jour, et hop !
Si l'idée est là, pourquoi ta PJ ne refléte pas au moins ses prémisses ?

Quand tu dis formulaire, tu penses UserForm ?

Peux-tu commencer à créer une base données exemple avec simplement une dizaine d’enregistrements?

PS: Ta non-réponse à ma question concernant ma version de ta macro Extractdonneesarret est une réponse?
 

agadio

XLDnaute Nouveau
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Use Form : exact !

Si mon fichier ne le reflete pas c'est parce que je voulais montrer l'existant
Je m'y attele des demain matin et je post

Je tacherais d'etre le plus explicite possible dans mon fichier

Merci pour ton temps ...
 

agadio

XLDnaute Nouveau
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Bonjour

Desolé, ce matin, réunion qui a trainé en longueur !

ci joint fichier

J'ai créé un Useform (a finaliser en terme de mise en page ainsi que la formule de calcul du rendement global)
J'aimerais qu'il s'affiche dans l'onglet "Formulaire" et qu'apres remplissage, quand on clique, les donnees vont s'implementer dans les onglets "base"

enfin, c'est une idée ...
 

Pièces jointes

  • Rdts simplifiés2012.zip
    77.3 KB · Affichages: 38
  • Rdts simplifiés2012.zip
    77.3 KB · Affichages: 42
  • Rdts simplifiés2012.zip
    77.3 KB · Affichages: 39

Staple1600

XLDnaute Barbatruc
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Bonsoir


Un exemple sommaire
(Un userform +10 TextBox + 1 CommandButton)
Code:
Private Sub CommandButton1_Click()
Dim Ce, i As Byte, dl
Ce = Split("B E G J M P S X Y Z")
dl = [A65536].End(xlUp).Row + 1
For i = 0 To UBound(Ce)
Range(Ce(i) & dl) = Controls("TextBox" & i + 1)
Next i
End Sub
Si tu commences avec les UserForm, je te suggère d'aller faire un tour dans la section Tutoriaux de la rubrique Téléchargements du site pour en apprendre plus à leur sujet.
 

agadio

XLDnaute Nouveau
Re : Transformer le fichier joint en formulaire qui alimentera une BdD

Bonsoir Staple,

Effectivement, je vais repasser par la case tuto, car je ne comprends rien a ton exemple de code !!!

Depuis ce matin, je cherche comme un ane a inserer une formule de calcul dans le formulaire, et meme ca je ne trouve pas !

Je vais donc, en attendant de savoir aussi afficher le formulaire sans macro (!!), passer quelques heures a lire ....

A bientot
Merci encore ...
 

Statistiques des forums

Discussions
312 764
Messages
2 091 859
Membres
105 079
dernier inscrit
Biscot_399