Notifications
Clear all

Loop de Macro

5 Posts
1 Usuários
0 Reactions
1,082 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Pessoal,
como posso fazer pra que essa macro repita 500 vezes quando for acionada?

Sub Macro4()
'
' Macro4 Macro
'
' Atalho do teclado: Ctrl+j
'
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Cut
ActiveWindow.SmallScroll Down:=24
ActiveCell.Offset(30, -4).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(0, 4).Range("A1").Select
End Sub

Obrigado

 
Postado : 16/02/2012 9:19 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde!!!

Veja se assim vai dar certo...

Sub Macro4()
'
' Macro4 Macro
'
' Atalho do teclado: Ctrl+j
'
    x = 0
    Do
        x = x + 1
        If x > 500 Then
            Exit Do
        End If
        Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
        Selection.Cut
        ActiveWindow.SmallScroll Down:=24
        ActiveCell.Offset(30, -4).Range("A1").Select
        ActiveSheet.Paste
        ActiveCell.Offset(0, 4).Range("A1").Select
    Loop
End Sub
 
Postado : 16/02/2012 9:58 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Lostruler
uma outra alternativa para um loop e utilizar For..next

For i=1 to 500
seu codigo
next
Uma duvida, vc sabe me dizer o que é pretendido com a linha

ActiveCell.Offset(30, -4).Range("A1").Select

entendo que de "A1" volte 4 colunas e avance 30 linhas, só que de "A" não dá para voltar

 
Postado : 16/02/2012 10:06 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Boa tarde,

Outra forma de fazer:

Sub lsLoop()
    Dim lContador As Integer

    lContador = 1

    While lContador <=500 
        Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
        Selection.Cut
        ActiveWindow.SmallScroll Down:=24
        ActiveCell.Offset(30, -4).Range("A1").Select
        ActiveSheet.Paste
        ActiveCell.Offset(0, 4).Range("A1").Select
    Wend
End Sub

Abraço

Marcos Rieper

 
Postado : 16/02/2012 10:10 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Orra...

Respostas fantásticas! :o

Muito Obrigado pessoal! Loop pra tudo agora! hahhaha

abs

 
Postado : 16/02/2012 10:14 am