+ Reply to Thread
Results 1 to 3 of 3

Select alternate rows: how??

Hybrid View

  1. #1
    Registered User
    Join Date
    12-27-2007
    Posts
    1

    Select alternate rows: how??

    I wrote the following code for a macro, to select alternate rows for the 300 rows in my worksheet:

    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro recorded 27-12-2007 by Siddhant Batra
    '
    Dim a As String
    
    Dim b As Long
    
    '
    a = "1:1"
    
    For b = 3 To 1000 Step 2
    
    a = a & "," & Str(b) & ":" & Str(b)
    Next b
     
    Range(a).Select
    
        
    End Sub
    -------------

    But it gives me the error "Run time error 1004: Method 'Range' of object '_Global' failed"

    Please help, you must have made out that I'm an amateur
    Last edited by VBA Noob; 12-27-2007 at 04:20 PM.

  2. #2
    Forum Contributor VBA Noob's Avatar
    Join Date
    04-25-2006
    Location
    London, England
    MS-Off Ver
    xl03 & xl 07(Jan 09)
    Posts
    11,988
    I can select around 100 alternative rows with

    Sub SelectAltRows()
    Dim c As Range
    Dim Str As String
         For Each c In Range("A3:A120")
              If Application.WorksheetFunction.Odd(c.Row) = c.Row Then
              Str = Str & "," & c.Address(rowabsolute = True, columnabsolute = True)
              End If
         Next c
      Str = Mid(Str, 2, Len(Str) - 1)
    Range(Str).EntireRow.Select
    End Sub
    However you may not need to select the rows. Can you explain what you need to do with the rows

    VBA Noob
    Last edited by VBA Noob; 12-27-2007 at 05:51 PM.
    _________________________________________


    Credo Elvem ipsum etian vivere
    _________________________________________
    A message for cross posters

    Please remember to wrap code.

    Forum Rules

    Please add to your signature if you found this link helpful. Excel links !!!

  3. #3
    Forum Expert royUK's Avatar
    Join Date
    11-18-2003
    Location
    Derbyshire,UK
    MS-Off Ver
    Xp; 2007; 2010
    Posts
    26,200
    As Noob says it is rare in VBA to need to Select a Range.

    Try this code
    '---------------------------------------------------------------------------------------
    ' Module    : Module1
    ' DateTime  : 09/05/2007 08:43
    ' Author    : Roy Cox (royUK)
    ' Website   : www.excel-it.com for more examples and Excel Consulting
    ' Purpose   : Select alternate Rows in the active sheet's used range
    '             Allows for Header Row in Row 1, change
    '             For X = R To 2 Step -2 to
    '             For X = R To 1 Step -2 if no Header Row
    ' Disclaimer; This code is offered as is with no guarantees. You may use it in your
    '             projects but please leave this header intact.
    
    '---------------------------------------------------------------------------------------
    Option Explicit
    
    Sub X()
        Dim rng    As Range
        Dim R      As Long
        Dim X      As Long
    
        R = ActiveSheet.UsedRange.Rows.Count
        For X = R To 1 Step -2
            If rng Is Nothing Then
                Set rng = Cells(X, 1).EntireRow
            Else
                Set rng = Union(rng, Cells(X, 1).EntireRow)
            End If
        Next X
        rng.Select
    
    End Sub
    Hope that helps.

    RoyUK
    --------
    For Excel Tips & Solutions, free examples and tutorials why not check out my web site

    Free DataBaseForm example

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1