Macro para pular li...
 
Notifications
Clear all

Macro para pular linha sob certa condição

2 Posts
2 Usuários
0 Reactions
850 Visualizações
(@melop)
Posts: 1
New Member
Topic starter
 

Olá,

Escrevi uma macro/módulo em forma de função para copiar a data da célula 'O1' e acrescentar 1 dia a mais a cada nova célula da coluna A a partir da célula 'A9' até que seja atingida a data limite contida na célula 'O6' e também para inserir uma linha ao encontrar certo dia específico de uma data que o usuário digita na célula S2.

Por algum motivo que desconheço a função não retorna nenhum valor. Por favor, caso desconfiem de algo me comuniquem.

A função que fiz no módulo da planilha foi:

Public Function IntervaloMes(dDataX As Date) As Boolean



Dim i As Integer
Dim j As Integer
Dim inicioDate As Date
Dim finalDate As Date
Dim refDate As Date
Dim seguinteDate As Date


incioDate = DateValue(dDate)
finalDate = Range("O6").Value
i = 9
refDate = Day(Cells(2, 19))


Do While inicioDate <> finalDate
    
    If Cells(i, 1).Value <> "" Then
        
        seguinteDate = DateAdd("d", 1, inicioDate)
        Cells(i + 1, 1).Value = seguinteDate

        If Day(seguinteDate) = refDate Then
            
            For j = 1 To 10
                Cells(i, j).Value = ""
            Next j
        End If
    Else
        seguinteDate = DateAdd("d", 2, inicioDate)
        Cells(i + 1, 1).Value = seguinteDate
    End If


    i = i + 1
    inicioDate = seguinteDate
Loop

End Function
 
Postado : 20/10/2017 10:50 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 4043
Illustrious Member
 

melop,

Boa tarde!

Seja muito bem vindo ao fórum. Como você não se apresentou, estou inserindo abaixo, links importantes sobre as regras do fórum que gostaria de sugerir a sua atenta leitura.

Isso propiciará aproveitar ao máximo o fórum e sempre manter o mesmo de forma organizada, sugiro ler os tópico da sregras abaixo:
viewtopic.php?f=7&t=16757
viewtopic.php?f=7&t=203
viewtopic.php?f=7&t=7903
viewtopic.php?f=7&t=3841
viewtopic.php?f=7&t=12600
viewtopic.php?f=7&t=3371

Da próxima vez que postar códigos VBA aqui no fórum, solicitamos, por gentileza, utilizar a TAG CODE que fica logo acima da caixa de mensagens.

Quanto à sua dúvida, não cheguei a examinar todo o código da sua função, todavia, a priori, percebi que existe uma variável (dDate) que não foi definida, logo no início da sua função, na linha

incioDate = DateValue(dDate)

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 20/10/2017 1:11 pm