Jump to content
PLC Forum

maemsrl

SCRIPT VB WinCC Advanced V15.1

Recommended Posts

maemsrl

Buonasera a tutti,

premesso che in VB sono tutt'altro che ferrato, sono riuscito a realizzare due piccoli script che scrivono e/o leggono variabili da un foglio excel esistente (se a qualcuno servono...no problema).
Mi trovo però incartato in un ciclo FOR...NEXT:
 

For n2 = 0 To MaxStep Step 1
        .Cells(n2+5,1).Value = SmartTags("HMI_Programma_PassoPrg{0}.X_interasse")
        .Cells(n2+5,2).Value = SmartTags("HMI_Programma_PassoPrg{0}.Y_interasse")
        .Cells(n2+5,3).Value = SmartTags("HMI_Programma_PassoPrg{0}.Diametro")
        .Cells(n2+5,4).Value = SmartTags("HMI_Programma_PassoPrg{0}.LatoProfilo")
        .Cells(n2+5,5).Value = "tacca"
Next
 

Il ciclo serve per scrivere nelle celle A5+n2, B5+n2, etc. del foglio Excel, i valori del DB del part-program.

 

Vorrei in pratica loopare per 300 volte (MaxStep) in modo da scrivere tutti i 300 passi di programma nel foglio excel (pieni o vuoti che siano).

 

In SCL la cosa sarebbe abbastanza semplice:

Al valore {0} sostituisco [#n2] e il compilatore accetta il codice.

 

Qualcuno mi sa dare una dritta su cosa dovrei scrivere al posto di {0} per indicizzare il trasferimento?

Il mio problema è solo questo...per il resto lo script, per quello che sono le mie necessità, gira e fa il suo dovere.


Grazie a tutti in anticipo

(spero che l'immagine si riesca a leggere)WriteToExcel.thumb.jpg.99b5b49155b3ea86c22a1fb96c0a55f7.jpg

Link to post
Share on other sites

il toby

così dovrebbe andare

For n2 = 0 To MaxStep Step 1
        .Cells(n2+5,1).Value = SmartTags("HMI_Programma_PassoPrg{" + cstr(n2) + "}.X_interasse")
        .Cells(n2+5,2).Value = SmartTags("HMI_Programma_PassoPrg{" + cstr(n2) + "}.Y_interasse")
        .Cells(n2+5,3).Value = SmartTags("HMI_Programma_PassoPrg{" + cstr(n2) + "}.Diametro")
        .Cells(n2+5,4).Value = SmartTags("HMI_Programma_PassoPrg{" + cstr(n2) + "}.LatoProfilo")
        .Cells(n2+5,5).Value = "tacca"
Next

 

il vbscript di wincc è vbscript classico, quindi la maggior parte delle funzioni di vbscript funzionano anche in wincc.

se ti servisse una reference fatta bene qui la puoi trovare

https://www.w3schools.com/asp/asp_ref_vbscript_functions.asp

 

Link to post
Share on other sites
maemsrl

Grazie per la soluzione e per il link.

faccio alcune prove, ma tutto ora sembra girare correttamente.

 

Da domani "VBS for dummies"...chissà che non mi perda ancora in sintassi "sconosciute".

Grazie ancora

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...