ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Record macro and obtain variable range results? (https://www.excelbanter.com/excel-discussion-misc-queries/105655-record-macro-obtain-variable-range-results.html)

Pierre

Record macro and obtain variable range results?
 
Am recording a macro to "clean up" imported data, and as we know, Excel
picks up firm cell locations rather than the range desired. This is
undesirable, as the sheets are different each time and the ranges vary.

My question is: seeing the examples of the code below, is there a way
to obtain such code via the keyboard during the recording phase,
without taking the results (which contain specific cell references) and
reinterpreting them and adjusting each one by hand? This macro is
quite lengthy.

(examples taken from J-walk.com(rangesel.xls)):

Sub SelectDown()
Range(ActiveCell, ActiveCell.End(xlDown)).Select
End Sub


'''''''''''''''''''''''''''''''''''''''''''''''''' '
Sub SelectUp()
Range(ActiveCell, ActiveCell.End(xlUp)).Select
End Sub


'''''''''''''''''''''''''''''''''''''''''''''''''' '
Sub SelectToRight()
Range(ActiveCell, ActiveCell.End(xlToRight)).Select
End Sub


'''''''''''''''''''''''''''''''''''''''''''''''''' '
Sub SelectToLeft()
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
End Sub


'''''''''''''''''''''''''''''''''''''''''''''''''' '
Sub SelectCurrentRegion()
ActiveCell.CurrentRegion.Select
End Sub


'''''''''''''''''''''''''''''''''''''''''''''''''' '
Sub SelectActiveArea()
Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell)).Select
End Sub

TIA for any ideas.
Pierre


Gord Dibben

Record macro and obtain variable range results?
 
Pierre

When recording, enable the Relative Reference Button then use selection shortcut
keys.

Sub Macro2()

'Using SHIFT + End + DownArrow with Relative Reference Button enabled

Range(Selection, Selection.End(xlDown)).Select
End Sub

Sub Macro5()

'using SHIFT + End + RightArrow

Range(Selection, Selection.End(xlToRight)).Select
End Sub

When moving the mouse from one cell to another you will get code like this.

ActiveCell.Offset(-16, -1).Range("A1").Select


Gord Dibben MS Excel MVP


On 17 Aug 2006 14:10:33 -0700, "Pierre" wrote:

Am recording a macro to "clean up" imported data, and as we know, Excel
picks up firm cell locations rather than the range desired. This is
undesirable, as the sheets are different each time and the ranges vary.

My question is: seeing the examples of the code below, is there a way
to obtain such code via the keyboard during the recording phase,
without taking the results (which contain specific cell references) and
reinterpreting them and adjusting each one by hand? This macro is
quite lengthy.

(examples taken from J-walk.com(rangesel.xls)):

Sub SelectDown()
Range(ActiveCell, ActiveCell.End(xlDown)).Select
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''' ''
Sub SelectUp()
Range(ActiveCell, ActiveCell.End(xlUp)).Select
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''' ''
Sub SelectToRight()
Range(ActiveCell, ActiveCell.End(xlToRight)).Select
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''' ''
Sub SelectToLeft()
Range(ActiveCell, ActiveCell.End(xlToLeft)).Select
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''' ''
Sub SelectCurrentRegion()
ActiveCell.CurrentRegion.Select
End Sub


''''''''''''''''''''''''''''''''''''''''''''''''' ''
Sub SelectActiveArea()
Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell)).Select
End Sub

TIA for any ideas.
Pierre



Pierre

Record macro and obtain variable range results?
 

Gord Dibben wrote:
Pierre

When recording, enable the Relative Reference Button then use selection shortcut
keys.


Gord,
Thanks for the reply. Still working on obtaining a workable version;
some compile errors which halts the macro. Looks as though I still
need to determine when to use a relative reference, and when to use
absolute. Even when using relative references, it's still indicating
cell locations. This may be normal. I'll keep hammering away.

Pierre



All times are GMT +1. The time now is 08:36 PM.

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