Traitement de données
Bonjour à tous,
Je suis en train d'essayer de mettre au point un fichier Excel récupérant les données d'un automate à travers RSLinx ...
Pour cette première partie, j'ai pu trouver la "formule" pour récupérer les valeurs de production.
Cependant, pourriez-vous m'aider à traiter ces données, puisqu'avec la macro de récupération, les données ne sont pas mémorisées.
Dans son fonctionnement, l'opérateur de production cliquera le bouton de la macro relevant les données.
Est-il possible, pour chaque journée, de créer une nouvelle colonne avec en première cellule la date d'enregistrement, donc la date à laquelle on aura cliquer le bouton, avec en dessous les chiffres de production, puis, chaque jour suivant, une autre colonne juste à côté pour les données du jour...
J'espère avoir été assez clair,
Merci d'avance pour voter aide
Thomas
Salut Thomas et le Forum
Thomas j'ai fait une appli avec RSLink (Allen-Bradley) à mon travail,
lecture dans 4 processeurs différents en simultané.
Je n'ai pas le fichier sous la main, sinon un exemple de quelques
lignes pour le principe, car présentement en arrêt de travail je ne
peux avoir accès au fichier.
Mytå
Salut Mytâ
J'ai exactement la même application avec RSLinx et Allen Bradley
Sous Excel je récupère les valeurs pièces bonnes et pièces mauvaises pour 4 machines, soit 8 valeurs.
Le problème, c'est que les valeurs changent tout le temps, donc, j'aimerai figer ces valeurs dans une colonne qui aura comme première cellule la date d'enregistrement puis, chaque jour qui suivra sera enregistré à côté, tout ça pendant un mois.
J'ai déjà la macro pour ouvrir RSLinx, récupérer les données, par contre je sèche énormément sur le code à utiliser pour enregistrer à chaque clic dans une colonne différente avec la date d'enregistrement en cellule de tête...
Reposes toi, si ton appli ressemble à ça quand tu seras rétabli peut être que tu pourras m'aider
++
Re Thomas
Un exemple de la disposition de tes valeurs faciliterais la création de ta
macro de copie.
Mytå
Salut et désolé de cette absence prolongée...
J'ai pu mettre au point une partie de feuillet excel permettant la récupération des valeurs journalières sous RSLinx mais je ne sais toujours pas créer la macro me permettant d'enregistrer ces valeurs avec la création automatique de la date du jour en début de ligne ou de colonne...
Si possible, le must serait de faire ça dans un second feuillet, pour laisser le 1er feuillet aux opérateurs qui cliqueraient sur la macro de récupération des valeurs ( celle là je sais la faire ) et ensuite la macro d'enregistrement de ces valeurs sur le 2nd feuillet...
Voilà le fichier à l'heure actuelle :
https://www.excel-pratique.com/~files/doc/releve_prod.xls
Merci de votre aide,
Mytâ, si tu rode encore quelque part, vu que tu as déjà fait une appli pour Allen-B avec RsLinx et Excel, j'espère que tu me feras signe
Salut Thomas
Je n'ai pas encore repris le travail mais mon code pour récuperer les datas
en simplifié est dans ce style je loop en continue sur les lectures.
Sub ReadPlcData()
Dim PlcData1
Dim PauseTime, Start, Finish, TotalTime
Dim RsLinxData1
'Top again loop call.
Topagain:
'Start Rslinx DDE Comms and set DDE Topic.
RsLinxData1 = DDEInitiate("RSLinx", "Topic_Name")
'Set plc data to variable
PlcData1 = DDERequest(RsLinxData1, "Topic_Name")
Cells(1, 1).Value = PlcData1
'Timer to reset dummy cell.
PauseTime = 5.0 ' Set duration. In seconds
Start = Timer ' Set start time.
Do While Timer < Start + PauseTime
DoEvents
Loop
Finish = Timer ' Set end time.
TotalTime = Finish - Start ' Calculate total time.
'Goto to top of module again to run loop.
GoTo Topagain
End Sub
Pour une seule exécution, tu supprimes GoTo Topagain, et insère la macro copier
Mytå