ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Combining macros (https://www.excelbanter.com/excel-discussion-misc-queries/66093-combining-macros.html)

GarToms

Combining macros
 
Hi all,

I'm looking to merge 2 macros in one so they both activate when i select a button. The macro code is as follows, the first needs to occur first.

MACRO 1:
Sub RemoveFormulasDeleteRows()
'
' RemoveFormulasDeleteRows Macro
' Macro recorded 19/01/2006 by Corus
'

'
Range("A14:R71").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("C16").Select
End Sub

MACRO 2
Function RowIsEmpty(n As Double) As Boolean
If Cells(n, 1).Value = "" And Cells(n, 1).End(xlToRight).Value = "" Then _
RowIsEmpty = True Else RowIsEmpty = False
End Function
Sub HideEmptyRows()
Dim tableEnd As Double
Dim m As Double

'tableEnd is set to the last row in the spreadsheet.
'work backwards from the last row upwards and hide the row if it is empty.

tableEnd = Range("a1").SpecialCells(xlCellTypeLastCell).Row
For m = tableEnd To 1 Step -1
If RowIsEmpty(m) Then Cells(m, 1).EntireRow.Hidden = True
Next m
End Sub

Any help with this would be appreciated.

Toms

Stanley

Combining macros
 
Private Sub CommandButton1_Click()
Call RemoveFormulasDeleteRows
Call RowIsEmpty
End Sub

Just replace CommandButton1 with your button name. This will run them in the
order you see above.


"GarToms" wrote:


Hi all,

I'm looking to merge 2 macros in one so they both activate when i
select a button. The macro code is as follows, the first needs to
occur first.

MACRO 1:
Sub RemoveFormulasDeleteRows()
'
' RemoveFormulasDeleteRows Macro
' Macro recorded 19/01/2006 by Corus
'

'
Range("A14:R71").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("C16").Select
End Sub

MACRO 2
Function RowIsEmpty(n As Double) As Boolean
If Cells(n, 1).Value = "" And Cells(n, 1).End(xlToRight).Value = ""
Then _
RowIsEmpty = True Else RowIsEmpty = False
End Function
Sub HideEmptyRows()
Dim tableEnd As Double
Dim m As Double

'tableEnd is set to the last row in the spreadsheet.
'work backwards from the last row upwards and hide the row if it is
empty.

tableEnd = Range("a1").SpecialCells(xlCellTypeLastCell).Row
For m = tableEnd To 1 Step -1
If RowIsEmpty(m) Then Cells(m, 1).EntireRow.Hidden = True
Next m
End Sub

Any help with this would be appreciated.

Toms


--
GarToms


GarToms

I'm trying to make a macro out of this but it doesn't appear in the macro list when i put it in vb. Does anyone know how i can use this code?

Private Sub Generate()
Call PasteBus
Call HideEmptyRows
Call No Loop
End Sub


Quote:

Originally Posted by Stanley
Private Sub CommandButton1_Click()
Call RemoveFormulasDeleteRows
Call RowIsEmpty
End Sub

Just replace CommandButton1 with your button name. This will run them in the
order you see above.


"GarToms" wrote:


Hi all,

I'm looking to merge 2 macros in one so they both activate when i
select a button. The macro code is as follows, the first needs to
occur first.

MACRO 1:
Sub RemoveFormulasDeleteRows()
'
' RemoveFormulasDeleteRows Macro
' Macro recorded 19/01/2006 by Corus
'

'
Range("A14:R71").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("C16").Select
End Sub

MACRO 2
Function RowIsEmpty(n As Double) As Boolean
If Cells(n, 1).Value = "" And Cells(n, 1).End(xlToRight).Value = ""
Then _
RowIsEmpty = True Else RowIsEmpty = False
End Function
Sub HideEmptyRows()
Dim tableEnd As Double
Dim m As Double

'tableEnd is set to the last row in the spreadsheet.
'work backwards from the last row upwards and hide the row if it is
empty.

tableEnd = Range("a1").SpecialCells(xlCellTypeLastCell).Row
For m = tableEnd To 1 Step -1
If RowIsEmpty(m) Then Cells(m, 1).EntireRow.Hidden = True
Next m
End Sub

Any help with this would be appreciated.

Toms


--
GarToms



All times are GMT +1. The time now is 07:35 AM.

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