Originally Posted by
xld
Dim oThis As Worksheet
Dim oWs As Worksheet
Dim iLastCol As Long
Dim i As Long
Set oThis = ActiveSheet
iLastCol = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 2 To iLastCol
Set oWs = Worksheets.Add(after:=Worksheets(Worksheets.Count))
oWs.Name = "mySheet" & i
oThis.Columns("A").Copy oWs.Columns("A")
oThis.Columns(i).Copy oWs.Columns("B")
Next i
oThis.Activate
You can also enter manually your desired name for each sheet. Thanks , xld for the code. I'm just edit one line on the input box. Try it. I works for me.
Dim oThis As Worksheet
Dim oWs As Worksheet
Dim iLastCol As Long
Dim i As Long
Set oThis = ActiveSheet
iLastCol = Cells(1, Columns.Count).End(xlToLeft).Column
For i = 2 To iLastCol
Set oWs = Worksheets.Add(after:=Worksheets(Worksheets.Count))
oWs.Name = InputBox("Enter sheet name:", "Name for Sheet") 'Enter your desired name for sheets
'oWs.Name = "mySheet" & i
oThis.Columns("A").Copy oWs.Columns("A")
oThis.Columns(i).Copy oWs.Columns("B")
Next i
oThis.Activate
Thanks.