ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Copy a range into an array (https://www.excelbanter.com/excel-programming/385973-copy-range-into-array.html)

Robert[_32_]

Copy a range into an array
 
I have a range ("B3:B23") in worsheet "Ranges" and I need to loop thru this
range and copy the values into an array.

Many Thanks
--
Robert Hill


WhytheQ

Copy a range into an array
 
hopefully this'll work:

Dim myArray()
Erase myArray 'incase it's already full
myArray =
Application.Transpose(ThisWorkbook.Sheets("Ranges" ).Range("B3:B23"))

Rgds
J


On Mar 23, 2:55 pm, Robert wrote:
I have a range ("B3:B23") in worsheet "Ranges" and I need to loop thru this
range and copy the values into an array.

Many Thanks
--
Robert Hill




Robert[_32_]

Copy a range into an array
 
Thank You. Worked great.
--
Robert Hill



"WhytheQ" wrote:

hopefully this'll work:

Dim myArray()
Erase myArray 'incase it's already full
myArray =
Application.Transpose(ThisWorkbook.Sheets("Ranges" ).Range("B3:B23"))

Rgds
J


On Mar 23, 2:55 pm, Robert wrote:
I have a range ("B3:B23") in worsheet "Ranges" and I need to loop thru this
range and copy the values into an array.

Many Thanks
--
Robert Hill





asım şenyuva[_2_]

Copy a range into an array
 

public vois CopySelectedItemsOneByOne();
// Get Row Count in Range
int lastRow = (LExcel.ActiveSheet as
Excel.Worksheet).UsedRange.Rows.Count;

//Get Col Count in Range
int lastCol = (LExcel.ActiveSheet as
Excel.Worksheet).UsedRange.Columns.Count;

object value;
//object value2;

Excel.Range excelCell = (Excel.Range)ThisAddIn.ExcelApp.Selection;

object obj = ThisAddIn.ExcelApp.Selection;

if (obj is Excel.Range)
{
Excel.Range selection = (Excel.Range)obj;

//value2 = (selection.Cells[lastRow, lastCol] as Excel.Range);

// Get Address Of Last Cell
string x = (selection.Cells[lastRow, lastCol] as
Excel.Range).Cells.get_Address(false, false,
Microsoft.Office.Interop.Excel.XlReferenceStyle.xl A1, null, null);


// Get Values of all cells
for (int c = 1; c <= lastCol; c++)
{
for (int r = 1; r <= lastRow; r++)
{
value = (selection.Cells[r, c] as Excel.Range).Value2;
if (value != null)
{
MessageBox.Show(value.ToString());
}
}
}


}

------------------------

"Robert" wrote:

Thank You. Worked great.
--
Robert Hill



"WhytheQ" wrote:

hopefully this'll work:

Dim myArray()
Erase myArray 'incase it's already full
myArray =
Application.Transpose(ThisWorkbook.Sheets("Ranges" ).Range("B3:B23"))

Rgds
J


On Mar 23, 2:55 pm, Robert wrote:
I have a range ("B3:B23") in worsheet "Ranges" and I need to loop thru this
range and copy the values into an array.

Many Thanks
--
Robert Hill






All times are GMT +1. The time now is 10:37 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com