help pasting data from an array

M

MJKelly

Hi, I have the following code which takes data from an array and
dumps it into a worksheet.
Startdata is a column number and enddata is a column number. the
columns of data between these are pasted into the worksheet from the
array. However, I always want the data pasted into column 5 onwards,
but the code is pasting the values into the column numbers of the
array. How do i change this? I've tried adding a count and setting
the start value as 5 (fifth column), but I can't get this to work?

For i = 1 To UBound(varArray)
For j = StartData To EndData
wksDump.Cells(i, j) = varArray(i, j)
Next j
Next i

any help greatly appreciated.

Matt
 
N

Nigel

The destination of the data currently is not independent of the array as you
indexing both using the same variable

Try using and extra destination column variable to control the output

For i = 1 To UBound(varArray)
dCol = 5
For j = StartData To EndData
wksDump.Cells(i, dCol) = varArray(i, j)
dCol = sCol + 1
Next j
Next i
 
D

Dave Peterson

So you're keeping all the rows, but only some of the columns:

For i = 1 To UBound(varArray, 1)

In fact, I'd use:

Option Explicit
Sub testme01()
Dim i As Long
Dim j As Long
Dim myCol As Long
Dim varArray As Variant
Dim StartData As Long
Dim EndData As Long
Dim wksDump As Worksheet

varArray = ActiveSheet.Range("a1:g12")

Set wksDump = Worksheets.Add

StartData = 3
EndData = 6

For i = LBound(varArray, 1) To UBound(varArray, 1)
myCol = 5
For j = StartData To EndData
wksDump.Cells(i, myCol) = varArray(i, j)
myCol = myCol + 1
Next j
Next i
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top