Olá, estou a começar aprender VBA, mas falta me aprender muito e preciso muitop para meu trabalho, estou tentando criar um código que encontre resultado igual ou posterior a uma data mas do mesmo nº processo, identificação do doente.
Na planilha A tenho as colunas, e quero preencher a coluna C e D com as informações da planilha B, checando o numero de processo do doente e verificando a data, tem que ser igual ou superior.
criei o código, mas não dá, podem ajudar por favor.
Sub ProcurarDataConsulta()
Dim wsA As Worksheet
Dim wsB As Worksheet
Dim lastRowA As Long, lastRowB As Long
Dim i As Long, j As Long
Dim Nºprocessoutente As String
Dim DataA As Date, DataB As Date
Set wsA = ThisWorkbook.Sheets("PlanilhaA")
Set wsB = ThisWorkbook.Sheets("PlanilhaB")
Pergunta
vania1989
Olá, estou a começar aprender VBA, mas falta me aprender muito e preciso muitop para meu trabalho, estou tentando criar um código que encontre resultado igual ou posterior a uma data mas do mesmo nº processo, identificação do doente.
Na planilha A tenho as colunas, e quero preencher a coluna C e D com as informações da planilha B, checando o numero de processo do doente e verificando a data, tem que ser igual ou superior.
Na Planilha B tenho as colunas:
Link do ficheiro:
https://www.transfernow.net/dl/20240128rEj37JIh
criei o código, mas não dá, podem ajudar por favor.
Sub ProcurarDataConsulta()
Dim wsA As Worksheet
Dim wsB As Worksheet
Dim lastRowA As Long, lastRowB As Long
Dim i As Long, j As Long
Dim Nºprocessoutente As String
Dim DataA As Date, DataB As Date
Set wsA = ThisWorkbook.Sheets("PlanilhaA")
Set wsB = ThisWorkbook.Sheets("PlanilhaB")
lastRowA = wsA.Cells(wsA.Rows.Count, "A").End(xlUp).Row
lastRowB = wsB.Cells(wsB.Rows.Count, "A").End(xlUp).Row
For i = 2 To lastRowA
Nºprocesso utente = wsA.Cells(i, 1).Value
Data = wsA.Cells(i, 2).Value
For j = 2 To lastRowB '
If wsB.Cells(j, 1).Value = doente Then
DataB = wsB.Cells(j, 2).Value
If DataB >= DataA Then
wsA.Cells(i, 3).Value = DataB
End If
End If
Next j
Next i
End Sub
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.