msibleyj Posted December 26, 2017 Report Share Posted December 26, 2017 I need to create an array with the following values: 1 0.6 2 1.5 3 2.5 4 3.5 5 4.5 6 5.5 7 6.5 8 7.5 9 8.5 10 9.5 11 10.5 12 11.5 13 12.5 14 13.5 15 14.5 16 16 17 18.5 18 22.5 19 27.5 20 32.5 21 40 22 63.5 So, when I increment through the array, it would return the values. For example %test[3]% = 2.5 How can I load these values into the array without having to manually enter a modify variable for each value? Mark Quote Link to comment Share on other sites More sharing options...
terrypin Posted December 26, 2017 Report Share Posted December 26, 2017 Hi Mark, Hope the screenshot, annotated command text and command code will show you one way of doing it. I've used commas to separate the nunbers, but any other sensible character would be OK too. If you were doing this with many different sets of numbers, with varying numbers of elements, then a more flexible approach would be to set up text files first. But the crucial part is the indexing, as illustrated. Variable Set String %tNumbers% to "0.6,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,14.5,16,18.5,22.5,27.5,32.5,40,63.5" Split String "%tNumbers%" on "," into %tArray22%, starting at 1 // Then continue with your macro. Here I've simply displayed each of the 22 elements in the array. Repeat Start (Repeat 22 times) Text Box Display: Result End Repeat <VARIABLE SET STRING Option="\x00" Destination="%tNumbers%" Value="0.6,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,14.5,16,18.5,22.5,27.5,32.5,40,63.5" NoEmbeddedVars="FALSE"/> <SPLIT STRING Source="%tNumbers%" SplitChar="," Dest="%tArray22%" Index="1"/> <COMMENT Value="Then continue with your macro. Here I've simply displayed each of the 22 elements in the array."/> <REPEAT START Start="1" Step="1" Count="22" Save="TRUE" Variable="%nCount%"/> <TEXT BOX DISPLAY Title="Result" Content="{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Tahoma;}}\r\n\\viewkind4\\uc1\\pard\\f0\\fs16 tArray22[%nCount%] = %tArray22[%nCount%]%\r\n\\par \r\n\\par }\r\n" Left="Center" Top="425" Width="278" Height="258" Monitor="0" OnTop="TRUE" Keep_Focus="TRUE" Mode="\x00" Delay="0"/> <END REPEAT/> Quote Link to comment Share on other sites More sharing options...
msibleyj Posted December 26, 2017 Author Report Share Posted December 26, 2017 Excellent! Got it to work when I created and entered %nCount% into the Variable field on the Repeat Start dialog: Thanks a million!! Mark Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.