sirWimelef Posted October 4, 2013 Share Posted October 4, 2013 helow all i have a gui with a ton of controls and i some cases i need to change the tabulation order theres is a way to change the navigation order of the controls ? Link to comment Share on other sites More sharing options...
water Posted October 4, 2013 Share Posted October 4, 2013 Not that I know of. Do you think it is a good idea to change the tab order? "A ton of controls" sounds like re-thinking the design of your application could yield better results. Maybe create multiple tabs in your GUI (like IE or FF), create multiple sections which can be hidden until needed (check Melba's GUIExtender - Extend and retract multiple sections within a GUI) etc.) My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
reb Posted October 5, 2013 Share Posted October 5, 2013 If you want to do it the hard way just change the order they are created. Switch button 1 and button 2 and note the tab order #include <GUIConstantsEx.au3> #include <StaticConstants.au3> $Window = GUICreate("Test",500,400) $button1 = GUICtrlCreateButton("Button1",10,200,50,20) $button2 = GUICtrlCreateButton("Button2",10,240,50,20) ; switch and see order change GUISetState(@SW_SHOW) Do Local $msg = GUIGetMsg() Until $msg = $GUI_EVENT_CLOSE REB MEASURE TWICE - CUT ONCE Link to comment Share on other sites More sharing options...
sirWimelef Posted October 9, 2013 Author Share Posted October 9, 2013 hi all and thx for the answers, i think that I need to give a little more info XD i work on a manufacturing factory and this is the a part of the quality test, the gui is generated based an a survey stored in a db every family of products have it own survey so the program create the tabs, checkboxes, radios, labels, inputs, etc dynamically, so they are created in an specific order and I can't create theme starting form the last there is the part of the code that generate de gui, its a little big ordered mess XD expandcollapse popupFunc informe($fam,$of,$verificador,$pag=1) local $guifull,$buton1,$buton2,$buton3,$buton4,$buton5,$buton6,$msg,$rs,$rs1,$sql,$grupo,$grupo2,$x,$y,$t=1,$parcial=0,$dada1,$dada2,$vermell=0,$ruta,$i,$labgio,$combunit Local $multiple,$multiline,$longo,$pordefecto,$splitdefecto,$defecto,$sololec=0,$rutainf local $valors[9999][8] local $tabs[25] $guifull=GUICreate("Vista previa del full per l'equip "&$fam,700,550,@DesktopWidth/2-350,@DesktopHeight/2-250,bitor($GUI_SS_DEFAULT_GUI,$WS_VISIBLE)) GUICtrlCreateLabel("OF:",5,13,25,20) GUICtrlCreateInput($of,25,10,65,20,$ES_READONLY) $labgio=GUICtrlCreateLabel("-",93,12,10,20) $combunit=GUICtrlCreateCombo("",100,10,35,20) $rs=$db.execute("select VHORQT from MWOHED where VHMFNO="&$of) if $rs.fields(0).value=1 Then GUICtrlSetState($combunit,$gui_hide) GUICtrlSetState($labgio,$gui_hide) Else $x="1" for $a=2 to $rs.fields(0).value $x=$x&"|"&$a next GUICtrlSetData($combunit,$x,$pag) $of=$of&"-"&$pag EndIf $rs=$db.execute("select MMITDS from MITMAS where MMITNO='"&$fam&"'") GUICtrlCreateLabel("Descripció equip:",240,13,90,20) if not $rs.eof Then GUICtrlCreateInput($rs.fields(0).value,330,10,360,20,$ES_READONLY) EndIf if $of=1 Then $buton1=GUICtrlCreateButton("Tancar",310,500,80,40) $buton2=GUICtrlCreateButton("",190,500,80,40,$BS_MULTILINE) GUICtrlSetState(-1,$gui_hide) $buton3=GUICtrlCreateButton("",100,500,80,40,$BS_MULTILINE) GUICtrlSetState(-1,$gui_hide) Else $buton1=GUICtrlCreateButton("Sortir sense"&@CRLF&" guardar",10,500,80,40,$BS_MULTILINE) guictrlsetstate($buton1,$gui_hide) guictrlsetstate($buton1,$GUI_DISABLE) $buton2=GUICtrlCreateButton(" Guardar "&@CRLF&"parcialment",610,500,80,40,$BS_MULTILINE) $buton3=GUICtrlCreateButton("Finalitzar"&@CRLF&" i guarda",520,500,80,40,$BS_MULTILINE) guictrlsetstate($buton3,$gui_disable) $rs1=$db.execute("select * from VeriCab where nof='"&$of&"'") if $rs1.eof Then $db.execute("insert into VeriCab (nof,verificador) values ('"&$of&"','"&$verificador&"')") Else $parcial=1 if $rs1.fields(3).value Then $sololec=1 GUICtrlSetState($buton2,$gui_disable) EndIf EndIf EndIf $buton4=GUICtrlCreateButton("Instrucions de Verificació",10,500,80,40,$BS_MULTILINE) $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&$fam&"' and grupo='rutafull'") if $rs.eof Then $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&StringLeft($fam,5)&"' and grupo='rutafull'") EndIf if $rs.eof Then $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&StringLeft($fam,3)&"' and grupo='rutafull'") EndIf if $rs.eof Then GUICtrlSetState($buton4,$gui_hide) Else $ruta=$rs.fields(0).value EndIf $buton5=GUICtrlCreateButton("Informe",100,500,80,40,$BS_MULTILINE) $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&$fam&"' and grupo='rutainf'") if $rs.eof Then $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&StringLeft($fam,5)&"' and grupo='rutainf'") EndIf if $rs.eof Then $rs=$db.execute("SELECT rtrim(campo) FROM VeriPreg where fam='"&StringLeft($fam,3)&"' and grupo='rutainf'") EndIf if $rs.eof Then GUICtrlSetState($buton4,$gui_hide) Else $rutainf=$rs.fields(0).value EndIf $buton6=GUICtrlCreateButton("Incidències",190,500,80,40,$BS_MULTILINE) GUICtrlCreateTab(10,40,680,450) $valors[0][0]=1 if StringLen($fam)>=3 Then $sql= "select rtrim(grupo) as grupo, fila, rtrim(columna) as columna, rtrim(campo) as campo, rtrim(tipo) as tipo, rtrim(parametros) as parametros, rtrim(comentarios) as comentarios,rtrim(configurador) as configurador,vmin,vmax from VeriPreg where fam = '"&StringLeft($fam,3)& "' and grupo<>'rutafull' and grupo<>'rutainf' and idioma='ESP' " if StringLen($fam)>=5 then $sql=$sql&" union select rtrim(grupo) as grupo, fila, rtrim(columna) as columna, rtrim(campo) as campo, rtrim(tipo) as tipo, rtrim(parametros) as parametros, rtrim(comentarios) as comentarios,rtrim(configurador) as configurador,vmin,vmax from VeriPreg where fam = '"&StringLeft($fam,5)& "' and grupo<>'rutafull' and grupo<>'rutainf' and idioma='ESP' " if StringLen($fam)=11 Then $sql=$sql&" union select rtrim(grupo) as grupo, fila, rtrim(columna) as columna, rtrim(campo) as campo, rtrim(tipo) as tipo, rtrim(parametros) as parametros, rtrim(comentarios) as comentarios,rtrim(configurador) as configurador,vmin,vmax from VeriPreg where fam = '"&StringLeft($fam,11)&"' and grupo<>'rutafull' and grupo<>'rutainf' and idioma='ESP' " $sql=$sql&" order by grupo,fila" $rs=$db.execute($sql) if not $rs.eof Then While not $rs.eof $grupo=$rs.fields(0).value $grupo2=$rs.fields(0).value $tabs[$t]=GUICtrlCreateTabItem($grupo) $t=$t+1 $i=0 while $grupo=$grupo2 $x=340 if StringInStr($rs.fields("parametros").value,"l")<>0 Then $multiline=StringMid($rs.fields("parametros").value,StringInStr($rs.fields("parametros").value,"l")+1,1) Else $multiline=1 EndIf if StringInStr($rs.fields("parametros").value,"x")<>0 Then $multiple=StringMid($rs.fields("parametros").value,StringInStr($rs.fields("parametros").value,"x")+1,1) if $multiple>3 Then $multiple=3 EndIf Else $multiple=1 EndIf if StringInStr($rs.fields("parametros").value,"c")<>0 Then $longo=220 Else $longo=0 endif if $rs.fields("columna").value<>"" Then $pordefecto=$rs.fields("columna").value Else $pordefecto="" EndIf if $rs.fields("tipo").value="combo" Then $splitdefecto=StringSplit($pordefecto,"-") Else $splitdefecto=StringSplit($pordefecto,"|") EndIf GUICtrlCreateLabel($rs.fields("Campo").value, 19,60+($rs.fields("fila").value+$i)*21) if $rs.fields("comentarios").value<>'' Then GUICtrlSetTip(-1,$rs.fields("comentarios").value) EndIf For $a=1 to $multiple if $rs.fields("tipo").value="titol" Then if $splitdefecto[0]<>1 Then GUICtrlCreateLabel($splitdefecto[$a], 270+($a*100),59+($rs.fields("fila").value+$i)*21,100,20,$SS_CENTER) EndIf Else if $rs.fields("tipo").value="text" or $rs.fields("tipo").value="compara" or $rs.fields("tipo").value="gradicodi" Then if $a<=$splitdefecto[0] Then $defecto=$splitdefecto[$a] Else $defecto="" EndIf $valors[$valors[0][0]][0]=GUICtrlCreateInput($defecto, 280+($a*99),59+($rs.fields("fila").value+$i)*21,80+$longo,19+(($multiline-1)*19),BitOR($ES_RIGHT,$ES_MULTILINE,$ES_AUTOHSCROLL)) elseif $rs.fields("tipo").value="si" Then $valors[$valors[0][0]][0]=GUICtrlCreateCheckbox("",315+($a*100),59+($rs.fields("fila").value+$i)*21,13,13) elseif $rs.fields("tipo").value="combo" Then if $a<=$splitdefecto[0] Then $defecto=$splitdefecto[$a] Else $defecto="" EndIf $valors[$valors[0][0]][0]=GUICtrlCreateCombo("", 280+($a*100),59+($rs.fields("fila").value+$i)*21,80,20) GUICtrlSetData($valors[$valors[0][0]][0],$defecto) EndIf $valors[$valors[0][0]][1]=$rs.fields("Campo").value&"*-"&$a $valors[$valors[0][0]][2]=$of $valors[$valors[0][0]][3]=$grupo $valors[$valors[0][0]][4]=$rs.fields("tipo").value if $rs.fields("configurador").value='' Then $valors[$valors[0][0]][5]=$rs.fields("vmin").value $valors[$valors[0][0]][6]=$rs.fields("vmax").value Elseif $rs.fields("configurador").value='len' Then $valors[$valors[0][0]][5]="L" $valors[$valors[0][0]][6]=$rs.fields("vmin").value Else $rs1=$db.execute("SELECT convert(int,left(QJOPTN,9)) FROM MPDCDF WHERE QJCONO = 444 AND QJFTID = '"&$rs.fields("configurador").value&"' AND QJCFIN = (SELECT PVCFIN FROM MPDVAN WHERE PVCONO = 444 AND PVFACI = '000' AND PVSTRT = '001' AND PVVANO = '"&$fam&"')") if not $rs1.eof Then $valors[$valors[0][0]][5]=$rs1.fields(0).value-$rs1.fields(0).value*$rs.fields("vmin").value/100 $valors[$valors[0][0]][6]=$rs1.fields(0).value+$rs1.fields(0).value*$rs.fields("vmax").value/100 EndIf EndIf $valors[$valors[0][0]][7]=$rs.fields("parametros").value GUICtrlSetState($valors[$valors[0][0]][0],$GUI_DISABLE) $rs1=$db.execute("select rtrim(valor) from VeriLin where nof='"&$valors[$valors[0][0]][2]&"' and grupo='"&$valors[$valors[0][0]][3]&"' and campo='"&$valors[$valors[0][0]][1]&"'") if not $rs1.eof Then ;~ $sololec=1 if $valors[$valors[0][0]][4]="si" Then if $rs1.fields(0).value="check" Then GUICtrlSetState($valors[$valors[0][0]][0],$GUI_CHECKED) GUICtrlSetState($valors[$valors[0][0]][0],$ES_READONLY) EndIf Else GUICtrlSetData($valors[$valors[0][0]][0],$rs1.fields(0).value) GUICtrlSetState($valors[$valors[0][0]][0],$ES_READONLY) EndIf EndIf $valors[0][0]=$valors[0][0]+1 EndIf Next if $multiline<>1 Then $i=$i+$multiline $rs.movenext if not $rs.eof Then $grupo2=$rs.fields(0).value Else $grupo2="fora" EndIf WEnd WEnd $rs=$db.execute("select top 3 * from VeriInci where actiu=1 and codi like '%"&$of&"%' or codi = '"&$fam&"' or codi ='"&StringMid($fam,1,3)&"' or codi ='"&StringMid($fam,1,5)&"' and actiu=1") if not $rs.eof Then $t=$t+1 $tabs[$t]=GUICtrlCreateTabItem("ERROR") GUICtrlCreateLabel("",10+2,40+22,680-6,450-25) GUICtrlSetBkColor(-1, 0xe94343) GUICtrlSetState(-1, $GUI_DISABLE) GUICtrlCreateLabel("",20,70,660,123,$SS_SUNKEN) if not $rs.eof Then GUICtrlSetData(-1,$rs.fields(1).value) $rs.movenext EndIf GUICtrlCreateLabel("",20,203,660,123,$SS_SUNKEN) if not $rs.eof Then GUICtrlSetData(-1,$rs.fields(1).value) $rs.movenext EndIf GUICtrlCreateLabel("",20,336,660,123,$SS_SUNKEN) if not $rs.eof Then GUICtrlSetData(-1,$rs.fields(1).value) EndIf $valors[$valors[0][0]][0]=GUICtrlCreateCheckbox("ACCEPTAR",310,470,80,10) $valors[$valors[0][0]][1]="ERROR-avis" $valors[$valors[0][0]][4]="si" GUICtrlSetState($valors[$valors[0][0]][0],$GUI_DISABLE) EndIf GUICtrlCreateTabItem("") GUICtrlSetState($tabs[1],$GUI_SHOW) if $sololec=0 Then GUICtrlSetState($valors[1][0],$gui_enable) EndIf $x=1 While 1 $msg=GUIGetMsg() Switch $msg Case $GUI_EVENT_CLOSE GUIDelete($guifull) Exit case $buton1 GUIDelete($guifull) Exit case $buton2 $parcial=1 if guardaddades($valors,$parcial,$fam)=1 Then GUIDelete($guifull) $of=stringsplit($of,"-") if $of[0]=1 Then informe($fam,$of[1],$verificador) Else informe($fam,$of[1],$verificador,$of[2]) EndIf Else GUIDelete($guifull) ExitLoop EndIf case $buton3 $parcial=0 if guardaddades($valors,$parcial,$fam)=1 Then GUIDelete($guifull) $of=stringsplit($of,"-") if $of[0]=1 Then informe($fam,$of[1],$verificador) Else informe($fam,$of[1],$verificador,$of[2]) EndIf Else GUIDelete($guifull) ExitLoop EndIf case $buton4 ShellExecute($ruta) case $buton5 ShellExecute($rutainf) case $buton6 GUISetState(@SW_HIDE,$guifull) incidencia($fam,$of,$verificador) GUISetState(@SW_SHOW,$guifull) EndSwitch if not GUICtrlGetState($combunit)=$gui_hide Then if $pag<>GUICtrlRead($combunit) Then While not _IsPressed("01") sleep(12) WEnd $x=GUICtrlRead($combunit) GUIDelete($guifull) $of=stringsplit($of,"-") informe($fam,$of[1],$verificador,$x) EndIf EndIf if $valors[$x][4]="si" and $sololec=0 Then if GUICtrlRead($valors[$x][0])==1 and $sololec=0 Then GUICtrlSetState($valors[$x+1][0],$gui_enable) $x=$x+1 EndIf elseif GUICtrlRead($valors[$x][0])<>'' and $sololec=0 Then if $valors[$x][4]="text" Then if $valors[$x][5]="L" Then if StringLen(GUICtrlRead($valors[$x][0]))>=$valors[$x][6] Then GUICtrlSetState($valors[$x+1][0],$gui_enable) GUICtrlSetBkColor($valors[$x][0],0xffffff) $vermell=0 $x=$x+1 Else if $vermell=0 then GUICtrlSetBkColor($valors[$x][0],0xFF0000) $vermell=1 EndIf EndIf elseif $valors[$x][5]<>0 and $valors[$x][6]<>0 Then if GUICtrlRead($valors[$x][0])>=$valors[$x][5] and GUICtrlRead($valors[$x][0])<=$valors[$x][6] Then GUICtrlSetState($valors[$x+1][0],$gui_enable) GUICtrlSetBkColor($valors[$x][0],0xffffff) $vermell=0 $x=$x+1 Else if $vermell=0 then GUICtrlSetBkColor($valors[$x][0],0xFF0000) $vermell=1 EndIf EndIf Else GUICtrlSetState($valors[$x+1][0],$gui_enable) $x=$x+1 EndIf elseif $valors[$x][4]="compara" Then $dada1=GUICtrlRead($valors[$x][0]) $dada2=GUICtrlRead($valors[$x-1][0]) if $valors[$x][7]<>'' Then for $a=1 to stringlen($valors[$x][7]) if StringMid($valors[$x][7],$a,1) <> 'C' and StringMid($valors[$x][7],$a,1)<>'L' and StringMid($valors[$x][7],$a,1)<>'x' Then $dada1=StringReplace($dada1,StringMid($valors[$x][7],$a,1),"") $dada2=StringReplace($dada2,StringMid($valors[$x][7],$a,1),"") EndIf next EndIf if $dada1=$dada2 Then GUICtrlSetData($valors[$x][0],$dada1) GUICtrlSetData($valors[$x-1][0],$dada2) GUICtrlSetState($valors[$x+1][0],$gui_enable) $x=$x+1 EndIf Else GUICtrlSetState($valors[$x+1][0],$gui_enable) $x=$x+1 EndIf EndIf if $x=$valors[0][0] or $x=$valors[0][0]+1 Then GUICtrlSetState($buton3,$gui_enable) GUICtrlSetState($buton2,$gui_disable) $x=$x+1 EndIf WEnd Else MsgBox(0,"error","La fulla de verificació no esta creada") GUIDelete($guifull) EndIf if $of<>1 then verificadors() EndFunc the msg text and some vars are in catalan Link to comment Share on other sites More sharing options...
water Posted October 9, 2013 Share Posted October 9, 2013 When do you want to change the tab order? While you generate the GUI based on the input or when the user clicks a button or has entered specific data? My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
sirWimelef Posted October 9, 2013 Author Share Posted October 9, 2013 (edited) well while i was writing the relpy i got an idea and i make a keytrap that can do the trick global $titol='' HotKeySet("{tab}", "alttab") func informe() .... $titol="Full de verificació per l'equip "&$fam .... endfunc func alttab() if $titol<>'' Then if winactive ($titol) Then send ("+{tab}") Else send ("{tab}") EndIf Else send ("{tab}") EndIf EndFunc isnt very "nice" but it works Edited October 9, 2013 by sirWimelef Link to comment Share on other sites More sharing options...
water Posted October 9, 2013 Share Posted October 9, 2013 If it works then it is nice BTW: I think everyone misunderstod your question. You want to tab backward and forward. We thought you wanted to change the sequence the tab key jumps to the next control. Means: Control1 -> Control2 -> Control3 to Control1 -> Control3 -> Control2 or something similar. My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
sirWimelef Posted October 9, 2013 Author Share Posted October 9, 2013 (edited) well both things are linked if I have the controls in the order that I want the tab will work backward and forward correctly that hotthey is just a trick to avoid the problem not to solve it Edited October 9, 2013 by sirWimelef Link to comment Share on other sites More sharing options...
water Posted October 9, 2013 Share Posted October 9, 2013 Changing the tab order is only possible by rearranging the controls (at least I didn't find any other information on the forum). So if you need to change the sequence of controls you need to rebuild the GUI. My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
sirWimelef Posted October 9, 2013 Author Share Posted October 9, 2013 well as someone wiser then me say "if work dont touch it" thx for all Link to comment Share on other sites More sharing options...
water Posted October 9, 2013 Share Posted October 9, 2013 My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now