clamp78 Inserito: 13 ottobre 2015 Segnala Inserito: 13 ottobre 2015 Salve a tutti, mi ero fatto tutta una serie di script con i quali andavo a leggere e scrivere su dei file txt,quando pero ho provato gli stessi script sul hmi (TP900) non ne funzionava nemmeno uno!Dopo infinite ricerche su internet (ho provato anche dal sito della Siemens, senza trovare uno script che funzioni),sono a malapena riuscito a copiare due file, da SB a USB; non sono ancora riuscito a trovare la funzione che crea un filenuovo (completamente vuoto), ma bene o male cancellando il vecchio file e ricopiando un file vuoto potrei risolvere.Ma ci sono funzioni che non riesco a trovare da nessuna parte, o quantomeno fanno tutte riferimento al funzionamento su PC!Una funzione di cui ho disperato bisogno e questa: usando il "CreateObject("FileName")" oppure il "CreateObject("FileSystem")" (che a quel che ho capito sono gli unici che funzionano con il CE), desidererei trovare un comando che mi permetta di leggere e scrivere sulle singole celle di un file Excel o file di testo; prima usando l'oggetto "Scripting.FileSystemObject" potevo leggere e scrivere le singole celle del file con il comando ActiveSheet.Cella (NumRiga,NumColonna).Value.Qualcuno sa dirmi se esiste un comando simile che possa essere usato sugli hmi?Grazie anticipatamente a tutti.
pigroplc Inserita: 13 ottobre 2015 Segnala Inserita: 13 ottobre 2015 esiste una sessione dell'aiuto in linea di wincc flex dove ci sono le differenze fra I comandi per win ce e win xx.Apri uno script nuovo e premi il tasto F1wincc flexible information system\utilizzo di wincc flexible\riferimento\vb script per windows cetrovi tutto!
clamp78 Inserita: 14 ottobre 2015 Autore Segnala Inserita: 14 ottobre 2015 Ciao Pigro, avevo già provato quelle funzioni: c'è solo la funzione "LineInputString" ma scrive un rigo, non una singola cella excel; e per fare la lettura di una cella?
pigroplc Inserita: 14 ottobre 2015 Segnala Inserita: 14 ottobre 2015 Dal sito Siemens tanto tempo fa ho scaricato un esempio di gestione delle celle di excel con Protool. Ho successivamente aggiornato l'esempio con Winccflex. In effetti guardando il percorso di aperture l'esempio su Protool si basa su un PC. Se invece di e:\test\bsp_rezeptur.xls metti il percorso sulla flash card o usb del pannello vedi se funziona.'esempio di lettura di una cella 'Creating a variable Dim SOLL 'Assignment of type Excel spreadsheet Set SOLL = CreateObject("excel.application") 'Open the existing table SOLL.Workbooks.Open "e:\test\bsp_rezeptur.xls" 'Assignment of target values from the table to the variables of the PLC SmartTags("VAR1_INT") = SOLL.Cells(3,6).Value SmartTags("VAR2_REAL") = SOLL.Cells(3,7).Value SmartTags("VAR3_STRING") = SOLL.Cells(3,8).Value SmartTags("ADD_INT") = SOLL.Cells(3,9).Value SmartTags("ADD_REAL") = SOLL.Cells(3,10).Value 'Processed in the background SOLL.Visible = False 'Save and quit Excel SOLL.ActiveWorkbook.Close 'Used to free up memory Set SOLL = Nothing "esempio di scrittura della cella 'Variable, the Excel spreadsheet is assigned (Excel example values) Dim XL_BW 'Allocation Excel Application Set XL_BW = CreateObject("excel.application") 'Existing Open Table XL_BW.Workbooks.Open "e:\test\bsp_rezeptur.xls" 'the row value recovered since the last update SmartTags("row") = XL_BW.Cells(3,5).Value 'Table entries (row, column) XL_BW.Cells(SmartTags("row"),1).Value = Now XL_BW.Cells(SmartTags("row"),2).Value = SmartTags("VAR1_INT") XL_BW.Cells(SmartTags("row"),3).Value = SmartTags("VAR2_REAL") XL_BW.Cells(SmartTags("row"),4).Value = SmartTags("VAR3_STRING") 'Increase the row index to the next call in the next line to write SmartTags("row") = SmartTags("row") + 1 'the row value getting stored for the next row available for the next update XL_BW.Cells(3,5).Value = SmartTags("row") 'Table does not show XL_BW.Visible = False 'Save and quit Excel XL_BW.ActiveWorkbook.Close(True) 'Used to free up memory Set XL_BW = Nothing"' Se non sbaglio il link di partenza del mio esempio è questo:https://support.industry.siemens.com/cs/document/976820/data-retrieving-from-and-writing-into-excel-or-access-with-visual-basic-script-and-protoolpro?dti=0&lc=en-WW
clamp78 Inserita: 14 ottobre 2015 Autore Segnala Inserita: 14 ottobre 2015 Peccato che la funzione CreateObject ("ExcelApplication") non funziona con Windows CE Certo che la Siemens con i suoi simulatori che non simulano un bel niente!Sto cercando di usare le funzioni LineInputString che ti leggono una alla volta tutte le righe del file, fornendo una stringa unica per ogni riga; poi con la funzione Split (RigaLetta,"separatore della colonna") dovrei poter dividere le singole celle del file.Tutto questo in lettura... In scrittura poi ... Spero di trovare nel frattempo un'anima Pia che mi illumini il cammino.
pigroplc Inserita: 14 ottobre 2015 Segnala Inserita: 14 ottobre 2015 non voglio difendere la Siemens (anche se lavoro con suoi prodotti da più di 31 anni), ma se si ha bisogno di accedere a files in genere si usano PC, I pannelli mal digeriscono gli script in termini di performances e sono relegati a semplici operazioni HMI e relative ricette, sopratutto al giorno d'oggi, quando I PC panel industriali hanno prezzi decisamente abbordabili.
clamp78 Inserita: 14 ottobre 2015 Autore Segnala Inserita: 14 ottobre 2015 Carissimo Pigro, non per condannare la Siemens, anche perché lavoro con i loro prodotti dal secondo superiore, e bestemmie a parte li adoro!pero se devo usare l'Audit (un sw Siemens, fatto specificatamente per i pannelli, che abbiamo pagato 800 x 2 = 1600€), e poi dovermi fare un c.... come una capanna semplicemente per creare uno script che visualizzi sulla pagina del pannello i dati memorizzati (dal sw Siemens) nel loro foglio excel, se permetti mi girano... lasciando anche perdere che non funziona la gestione della lingua!E meno male che sono pessimista per natura, e mi sono messo a fare le prove sul pannello non appena mi è arrivato, perché se mi fidavo del simulatore (dove funzionava tutto al 100%), avrei fatto una figuraccia che nemmeno immagini!!!!!!La Siemens fa una pubblicità allucinante dei suoi simulatori, dove puoi provare tutto l'impianto, e poi i comandi che inserisci non funzionano perché nel pannello usano una versione diversa di Windows... A volte sembrano dei bambini!
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora