Usuário com melhor resposta
Administração de BD

Pergunta
-
Olá caros amigos:
Olha eu aqui maaaaisss uma vez com uma questão.
Gostaria de saber o seguinte: tenho uma userform onde cadastro informações de um tipo de documento chamado RNC (Relatório de não conformidades).
As informações inputadas na userform ao clicar no botão CADASTRAR vão para uma planilha chamada BD.
Pois bem, sabendo que o Excel trabalha com no máximo 65536 células, pergunto: como posso criar uma sub rotina que quando as informações gravadas chegarem na célula 65536 seja criada uma nova planilha com o nome BD2 e nessa nova planilha seja gravada daí por diante as informações?
Muito obrigado meus amigos e fiquem com Deus!!!
Respostas
-
Olá Braz, dá pra fazer assim...Faz um teste..
Code SnippetSub Macro()
Dim I As Integer
I = 1
Plan = "BD"
If Worksheets(Plan).Range("A65536") <> Empty Then
For Each Plan In Worksheets
If Worksheets(I).Name = "BD2" Then
Plan = "BD2"
GoSub Grava
Exit Sub
End If
I = I + 1
Next Plan
Else
GoSub Grava
Exit Sub
End If
Sheets.Add.Name = "BD2"
Plan = "BD2"
Grava:
'Ponha sua sub aqui, mas se for fazer referência a uma planilha faça assim Worksheets(Plan)
ReturnEnd Sub
Até..
-
Você acertou.....
Na verdade o return não está interferindo em nada....Eu o deixei porque a sintaxe do gosub possui o Return...Pra fica mais certinho...
No final do código esqueci de por assim..
Code SnippetSheets.Add.Name = "BD2"
Plan = "BD2"
GoSub Grava
Exit Sub
Grava:
'Ponha sua sub aqui, mas se for fazer referência a uma planilha faça assim Worksheets(Plan)
ReturnEnd sub
Mas se preferir pode deixar sem..Daí os exit sub poderão ser apagados...
Outro...Fica na paz..
Todas as Respostas
-
Olá Braz, dá pra fazer assim...Faz um teste..
Code SnippetSub Macro()
Dim I As Integer
I = 1
Plan = "BD"
If Worksheets(Plan).Range("A65536") <> Empty Then
For Each Plan In Worksheets
If Worksheets(I).Name = "BD2" Then
Plan = "BD2"
GoSub Grava
Exit Sub
End If
I = I + 1
Next Plan
Else
GoSub Grava
Exit Sub
End If
Sheets.Add.Name = "BD2"
Plan = "BD2"
Grava:
'Ponha sua sub aqui, mas se for fazer referência a uma planilha faça assim Worksheets(Plan)
ReturnEnd Sub
Até..
-
Olá meu irmão Evangelista tudo bem?
Olha, acho que achei onde está o erro, pelos teste que fiz aqui, eu tirei o Return do final da sub e a rotina funcionou normalmente.
Não sei se era isso, mas se não é , tive sorte de principiante rsrsrsrsrsrsrsr
Se não for por favor me desculpe. Um grande abraço e fique na paz!!! -
Você acertou.....
Na verdade o return não está interferindo em nada....Eu o deixei porque a sintaxe do gosub possui o Return...Pra fica mais certinho...
No final do código esqueci de por assim..
Code SnippetSheets.Add.Name = "BD2"
Plan = "BD2"
GoSub Grava
Exit Sub
Grava:
'Ponha sua sub aqui, mas se for fazer referência a uma planilha faça assim Worksheets(Plan)
ReturnEnd sub
Mas se preferir pode deixar sem..Daí os exit sub poderão ser apagados...
Outro...Fica na paz..