Sub YSwap3()
'**** Yogi Anand on Aug-23-2003 *********************************************
'* swaps the values from 2 ranges 1 column wide and 5 rows deep *
'* one or both ranges may consist of merged cells
'****************************************************************************
Beep
swap1r = InputBox("key-in range for Swap1")
[E1:E5] = "=Index(swap1, {1,2,3,4,5}, 1)": Set swapme1 = [E1:E5]: [E1:E5].Value = [E1:E5].Value
Beep
swap2r = InputBox("key-in range for Swap2")
Cells(Range(swap1r).Row, Range(swap1r).Column) = Cells(Range(swap2r).Row, Range(swap2r).Column)
Cells(Range(swap1r).Row + 1, Range(swap1r).Column) = Cells(Range(swap2r).Row + 1, Range(swap2r).Column)
Cells(Range(swap1r).Row + 2, Range(swap1r).Column) = Cells(Range(swap2r).Row + 2, Range(swap2r).Column)
Cells(Range(swap1r).Row + 3, Range(swap1r).Column) = Cells(Range(swap2r).Row + 3, Range(swap2r).Column)
Cells(Range(swap1r).Row + 4, Range(swap1r).Column) = Cells(Range(swap2r).Row + 4, Range(swap2r).Column)
Cells(Range(swap2r).Row, Range(swap2r).Column) = WorksheetFunction.Index([E1:E5], 1, 1)
Cells(Range(swap2r).Row + 1, Range(swap2r).Column) = WorksheetFunction.Index([E1:E5], 2, 1)
Cells(Range(swap2r).Row + 2, Range(swap2r).Column) = WorksheetFunction.Index([E1:E5], 3, 1)
Cells(Range(swap2r).Row + 3, Range(swap2r).Column) = WorksheetFunction.Index([E1:E5], 4, 1)
Cells(Range(swap2r).Row + 4, Range(swap2r).Column) = WorksheetFunction.Index([E1:E5], 5, 1)
swapme1.Clear
MsgBox "Done!"
End Sub