<< Click to Display Table of Contents >> Navigation: 3. Script Language > Browser and Office (Acc.-Engine) > OFC. - Office-Commands > MS-Excel Scripting > !Sample-Scripts: Neuronet-Cell |
'
'SPR Script-file: NN_Excel
'Purpose: Neuronet-Cell in Excel
'Author: DESKTOP
'Creation date: 07-15-2019 at 17:26:54
'===========================================================
'#EXE:?path\
'#SPI:ForceWrite
' EXCEL-Example
OFC.excel|OPEN||0|1
' Activate by name
OFC.excel|SHEET_ACTIVATE|Tabelle
GSB.Beschriftung
GSB.Input_orig
GSB.Set_Weight_Start
' Forward Pass: Summe der Inputs
OFC.Excel|FORMULA|F4|=+E4+E5+E6+E7|0
' Output= SumInput / NumInputs
OFC.Excel|FORMULA|H4|=+F4/4|0
' Setze Sollwert
OFC.Excel|FORMULA|H7|32640|1
' Berechne 1/Lernfaktor Epsilon
OFC.Excel|FORMULA|J10:J10|0,01|1
OFC.Excel|FORMULA|F7|=+1/J10|0
' Berechner Fehler
OFC.Excel|FORMULA|H10:H10|=+H4-H7|0
OFC.Excel|FORMULA|J4|=+(H10/F7)*-1|0
OFC.Excel|FORMULA|J7|=+(J4/4)|0
' Backward-Pass
OFC.Excel|FORMULA|F10|=+J7/F7|0
OFC.Excel|FORMULA|L4|=+E4*F10/F7|0
OFC.Excel|FORMULA|L5|=+E5*F10/F7|0
OFC.Excel|FORMULA|L6|=+E6*F10/F7|0
OFC.Excel|FORMULA|L7|=+E7*F10/F7|0
OFC.Excel|FORMULA|M4|=+D4+L4|0
OFC.Excel|FORMULA|M5|=+D5+L5|0
OFC.Excel|FORMULA|M6|=+D6+L6|0
OFC.Excel|FORMULA|M7|=+D7+L7|0
MBX. Start Backward-Pass
' With each Backward-Pass the Error of the Cell will reduce
DOL.1
GSB.Backward
MBX. Go On
OOP.
PAU.1
ENR.
'===========================================================
' Sub-Programms
' Copy Result to Weights
:Backward
FOR.$$LOP|4|7
GSB.CopyLine|$$LOP
NEX.
RET.
:CopyLine
VAN.$$COR=§§_01
OFC.Excel|GET_CELL_ANY_BY_RANGE|M$$COR|$$RES
' We replace in german systems the "." with a ","
RPL.$$RES|.|,
OFC.Excel|FORMULA|D$$COR|$$RES|1
RET.
:Beschriftung
OFC.Excel|WRITE|B3|Input
OFC.Excel|WRITE|D3|Gewichte
OFC.Excel|WRITE|E3|SumInput
OFC.Excel|WRITE|F6|1/Epsilon
OFC.Excel|WRITE|F3|AddInputs
OFC.Excel|WRITE|H3|Output
OFC.Excel|WRITE|H6|Soll
OFC.Excel|WRITE|H9|Error
OFC.Excel|WRITE|F9|Korr.-Faktor
OFC.Excel|WRITE|J3|Error gew.
OFC.Excel|WRITE|J6|Error/NumInp
OFC.Excel|WRITE|L3|Backward Pass
OFC.Excel|WRITE|J9|Lernfaktor Epsilon
RET.
' Setze Inputs for Start
:Input_orig
OFC.Excel|FORMULA|A4:B7|255|1
OFC.Excel|FORMULA|A5|12|1
OFC.Excel|FORMULA|A7|32|1
'VAN.$$NEG=127
VAN.$$NEG=0
OFC.Excel|FORMULA|B4|=+A4-$$NEG|0
OFC.Excel|FORMULA|B5|=+A5-$$NEG|0
OFC.Excel|FORMULA|B6|=+A6-$$NEG|0
OFC.Excel|FORMULA|B7|=+A7-$$NEG|0
OFC.Excel|FORMULA|E4|=+B4*D4|0
OFC.Excel|FORMULA|E5|=+B5*D5|0
OFC.Excel|FORMULA|E6|=+B6*D6|0
OFC.Excel|FORMULA|E7|=+B7*D7|0
RET.
' Setze Weights for Start
:Set_Weight_Start
OFC.Excel|FORMULA|D4|16|1
OFC.Excel|FORMULA|D5|32|1
OFC.Excel|FORMULA|D6|128|1
OFC.Excel|FORMULA|D7|255|1
RET.