Forum Discussion

ONG ZHEN YANG RP's avatar
ONG ZHEN YANG RP
Brass Contributor
May 05, 2018

Needs Help with a Nested "FOR.. NEXT" Loop

Hi everyone! I am trying to write a nested “FOR… NEXT” loop to create the following table in Excel

 

ExampleAny help is much appreciated! :) 

  • Haytham Amairah's avatar
    Haytham Amairah
    Silver Contributor

    Hi,

     

    You don't have to use For...Next Statement!

     

    This formula can do that for you:

    =IF(AND(ISODD(ROW()),ISODD(COLUMN())),"Odd",IF(AND(ISEVEN(ROW()),ISEVEN(COLUMN())),"Even",""))

     Please copy it in cell A1, then use the fill handle to drag it to the right and down.

     

    Regards

      • Haytham Amairah's avatar
        Haytham Amairah
        Silver Contributor

        Hi,

         

        If so, please try this VBA code:

        Sub ODD_EVEN()
        'Written by Haytham Amairah
        'Created: 5/5/2018
        'Last updated: 5/5/2018
            
            On Error GoTo handler
            
            Dim appliedRange As Range
            Set appliedRange = Application.InputBox("Please select the range:", , , , , , , 8)
            
            Dim cell As Range
            
            Application.ScreenUpdating = False
            Application.EnableAnimations = False
            
            For Each cell In appliedRange
                
                If cell.Row Mod 2 = 0 And cell.Column Mod 2 = 0 Then
                   cell.Value = "Even"
                ElseIf cell.Row Mod 2 <> 0 And cell.Column Mod 2 <> 0 Then
                   cell.Value = "Odd"
                Else
                   cell.Value = ""
                End If
                
            Next
            
            Application.ScreenUpdating = True
            Application.EnableAnimations = True
            
        handler:
            Application.ScreenUpdating = True
            Application.EnableAnimations = True

        End Sub

         

        I hope this helps you

        Haytham

Resources