anks Posted July 15, 2010 Posted July 15, 2010 Dear All, I have to create a array with names such as: Value1[2] ; Value2[2] Value3[2] . . . Value50[2] where Value1[0] = "1". Value2[1] = "Boolean1". The same thing follows for other 50 Value array's I have attached a snippet of code for reference. Please review it and help me. for $i = 1 to 50 STEP 1 ; Making 50 points $arrayname = "value" & $i $arrayname[0] = $i $str1 = ' " ' $str2 = 'Boolean' $cstr = $i $str3 = ' " ' $namestr = $str1 & $str2 & $cstr & $str3 $arrayname[1] = $namestr Next The above code throws a error "Subscript used with non-Array variable." Can anybody please suggest how to move on with it. How to create arrays Value1, Value2, ..... Value50 and this inturn takes values as Value1[0] Value1[1]
water Posted July 15, 2010 Posted July 15, 2010 (edited) If I understand correctly ou need 50 (fifty) two-dimensional arrays? Easiest way I can think of is a 3-dimensional array. 1st dimension = rows 2nd dimension = columns 3rd dimension = arrays Global $array[50][2][50] $array[2][0][5] = 50 Sets the 3rd row, first column in the 6th array to value 50 (because all index values start with 0). Fill all cells with "0": ; Fill in a loop For $iArray = 0 To UBound($array,3)-1 ; Loop through all the arrays (dimension 3) For $iColumn = 0 To UBound($array,2)-1 ; Loop through all the columns (dimension 2) For $iRow = 0 To UBound($array,1)-1 ; Loop through all the rows (dimnsion 1) $array[$iRow][$iColumn][$iArray] = 0 Next Next Next Edited July 15, 2010 by water My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
Moderators Melba23 Posted July 15, 2010 Moderators Posted July 15, 2010 anks,Why not use a single 2D array like this - much easier to code and probably much easier to address eslewhere in your code!: #include <Array.au3> Global $aValue[51][2] For $i = 0 To 50 $aValue[$i][0] = $i $aValue[$i][1] = '"Boolean' & $i & '"' Next _ArrayDisplay($aValue)As usual, ask if anything is unclear. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
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