Galera gostaria de pedir a ajuda de vocês num projeto que estou desenvolvendo aqui, eu tenho o seguinte código para procurar linhas e gravar os dados:
Private Sub btn_Cadastrar_Click()
Dim lin As Integer
If Range("A3") = "" Then
lin = 3
Else
Range("A1").Select
Selection.End(xlDown).Select
lin = ActiveCell.Row + 1
End If
Sheets("contrato").Cells(lin, 41).Value = Me.txt_T_Numero.Value & "/" & Me.txt_T_Ano.Value
Sheets("contrato").Cells(lin, 42).Value = Me.txt_T_Processo.Value
Sheets("contrato").Cells(lin, 43).Value = Me.txt_T_Beneficiario.Value
Sheets("contrato").Cells(lin, 44).Value = Me.cbo_T_Modalidade.Value
Sheets("contrato").Cells(lin, 45).Value = Me.txt_T_Objeto.Value
Sheets("contrato").Cells(lin, 46).Value = Me.txt_T_Observacao.Value
Sheets("contrato").Cells(lin, 47).Value = Me.DTPicker_T_DataInicio.Value
Sheets("contrato").Cells(lin, 48).Value = Me.DTPicker_T_DataTermino.Value
Sheets("contrato").Cells(lin, 49).Value = Me.txt_T_ValorMensal.Value
Sheets("contrato").Cells(lin, 50).Value = Me.txt_T_ValorGlobal.Value
Sheets("contrato").Cells(lin, 51).Value = Me.txt_T_Situacao.Value
If txt_T_Anexo01.Value <> "" Then
Sheets("contrato").Cells(lin, 52).Value = ThisWorkbook.Path & "" & "ANEXO 01 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo01.Text, Sheets("contrato").Cells(lin, 52).Value
End If
If txt_T_Anexo02.Value <> "" Then
Sheets("contrato").Cells(lin, 53).Value = ThisWorkbook.Path & "" & "ANEXO 02 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo02.Text, Sheets("contrato").Cells(lin, 53).Value
End If
If txt_T_Anexo03.Value <> "" Then
Sheets("contrato").Cells(lin, 54).Value = ThisWorkbook.Path & "" & "ANEXO 03 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo03.Text, Sheets("contrato").Cells(lin, 54).Value
End If
If txt_T_Anexo04.Value <> "" Then
Sheets("contrato").Cells(lin, 55).Value = ThisWorkbook.Path & "" & "ANEXO 04 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo04.Text, Sheets("contrato").Cells(lin, 55).Value
End If
If txt_T_Anexo05.Value <> "" Then
Sheets("contrato").Cells(lin, 56).Value = ThisWorkbook.Path & "" & "ANEXO 05 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo05.Text, Sheets("contrato").Cells(lin, 56).Value
End If
If txt_T_Anexo06.Value <> "" Then
Sheets("contrato").Cells(lin, 57).Value = ThisWorkbook.Path & "" & "ANEXO 06 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo06.Text, Sheets("contrato").Cells(lin, 57).Value
End If
If txt_T_Anexo07.Value <> "" Then
Sheets("contrato").Cells(lin, 58).Value = ThisWorkbook.Path & "" & "ANEXO 07 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo07.Text, Sheets("contrato").Cells(lin, 58).Value
End If
If txt_T_Anexo08.Value <> "" Then
Sheets("contrato").Cells(lin, 59).Value = ThisWorkbook.Path & "" & "ANEXO 08 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo08.Text, Sheets("contrato").Cells(lin, 59).Value
End If
If txt_T_Anexo09.Value <> "" Then
Sheets("contrato").Cells(lin, 60).Value = ThisWorkbook.Path & "" & "ANEXO 09 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo09.Text, Sheets("contrato").Cells(lin, 60).Value
End If
If txt_T_Anexo10.Value <> "" Then
Sheets("contrato").Cells(lin, 61).Value = ThisWorkbook.Path & "" & "ANEXO 10 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo10.Text, Sheets("contrato").Cells(lin, 61).Value
End If
If txt_T_Anexo11.Value <> "" Then
Sheets("contrato").Cells(lin, 62).Value = ThisWorkbook.Path & "" & "ANEXO 11 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo11.Text, Sheets("contrato").Cells(lin, 62).Value
End If
If txt_T_Anexo12.Value <> "" Then
Sheets("contrato").Cells(lin, 63).Value = ThisWorkbook.Path & "" & "ANEXO 12 - TERMO ADITIVO REFERENTE CONTRATO " & txt_TRC_Numero & txt_TRC_Ano & ".pdf"
FileCopy txt_T_Anexo12.Text, Sheets("contrato").Cells(lin, 63).Value
End If
Sheets("contrato").Cells(lin, 64).Value = Me.txt_TRC_Numero.Value & Me.txt_TRC_Ano.Value
End Sub
Esse código grava os dados nas linhas de 41 à 75, ou seja, começa em "AO" e termina em "BW".
O que eu preciso é bolar uma maneira desse código verificar condições para gravar os dados no lugar correto da minha planilha, tipo: Se a linha 41 for igual a Empty(vazio) ele grava no lugar que eu citei como exemplo, senão grava nas linhas 76 à 110, senão nas linhas 111 à 145 e assim por diante (isso repetiria 10 vezes) que é o máximo de termos aditivos que eu permito cadastrar.
Eu até imaginino a lógico do funcionamento, mas não vejo como escrever isso sem que o código fique GIGANTE.
Espero que algum amigo do fórum possa me dar uma força nesse problema. Desde já agradeço a atenção de todos e desejo Boas Festas.
DGAF / DVGD - Divisão de Gestão de Documentos
Rafael A. Guimarães
[email protected]
Postado : 12/12/2013 8:16 am