Explicação:
Tenho uma planilha que tem uma base de dados e cada linha tem um ID, para cada ID existe uma aba na planilha correspondente ao mesmo.
Uso um UserForm, onde escrevo na TextBox1 o nome do ID e ele me retorna os valores por outras TextBox.
Duvida:
Preciso Imprimir a aba correspondente ao ID que esta na TextBox1 por um botão detro do mesmo UserForm.
Exemplo: Sheets( *VARIÁVEL*).PrintOut
A *VARIÁVEL* tem que ser o valor da TextBox1 pois o (nome do ID) e o (nome da ABA) são o mesmo.
Exemplo: Nome ID = #010
Nome Aba = #010
Grato desde já!!
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.
Olá Daniel,
Uma opção de solução para a sua questão seria o seguinte código:
Private Sub CommandButton1_Click()
Dim aba As String
aba = TextBox1.Value <- caso não seja o TextBox1, atualize com o nome do TextBox
Sheets(Array(aba)).PrintOut
End Sub
Qualquer dúvida, estou a disposição e boa sorte.
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.
Para imprimir a aba correspondente ao ID que está na TextBox1, você pode seguir os seguintes passos:
Armazene o valor da TextBox1 em uma variável. Por exemplo, suponha que a variável se chama "id" e você já atribuiu o valor da TextBox1 a ela.
Verifique se a aba com o nome igual a "id" existe na planilha. Você pode fazer isso usando a função WorksheetFunction.CountIf, que verifica se um valor existe em um intervalo. Por exemplo, suponha que as abas estão nas células A1:A10 da planilha "Dados". O código para verificar se a aba existe seria:Dim existe As Long
existe = WorksheetFunction.CountIf(Sheets("Dados").Range("A1:A10"), id)
If existe = 0 Then
MsgBox "A aba correspondente ao ID não existe."
Exit Sub
End If
Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.