Ir para conteúdo
Fórum Script Brasil
  • 0

Como criar um código Sku no vba


Pedro Dantas de Negreiros Neto

Pergunta

Olá boa tarde aos amigos!

Não tenho muita experiência em VBA, segui alguns vídeos do YouTube e estou tentando montar um sistema de cadastro de produtos. Mas estou tendo dificuldade em criar um código usando as próprias informações inseridas no formulário.

Ex: Alimento o formulário com os dados: categoria, número da foto, tipo, tamanho e fornecedor. 

Com base nesses dados quero ao clicar no botão salvar, além de gravar na linha da planilha em cada colula todas essas informações, quero que grave também nessa mesma linha na coluna chamada código a junção desses dados separados por um ponto, formando um código que seria mais ou menos assim:

Categoria.foto.tipo.tamanho.fornecedor

01.001.01.45C.01

Eu consegui juntar esse código com uma fórmula, mas fiz direto na planilha sem passar pelo VBA para ver se funcionária, mas se eu copio e colo a fórmula na coluna código quando clico em salvar no formulário a gravação dos dados ao invés de começar na primeira linha, vai lá para baixo depois da última célula em que tem a fórmula. Ex: se eu faço a fórmula e copio para a coluna código até a linha 5. Quando Clico em salvar no formulário a gravação vai começar na linha 6 depois da última célula em que tem a fórmula copiada.

Alguém poderia me dar uma ajuda de como posso resolver essa questão?

Obrigado 

Editado por Pedro Dantas de Negreiros Neto
Palavra errada
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Na célula a1 tenho Categoria, na célula b1 tenho Foto, na célula c1 tenho Junção.

Na célula a2 tenho 1, na célula b2 tenho 1, na célula c2 tenho a função =TEXTO(A2;"00")&"."&TEXTO(B2;"000"), o que dá 01.001

Eu não entendi a função do formulário e do VBA. Se que copiar a fórmula da célula C2 na célula C3, você usa o comando copiar e colar.

Se eu entendi tudo errado, tem jeito mostrar o esquema do formulário (tire uma foto com o comando printScreen) e também  uma lista do código que está dando problema? Sem ver o código, fica dificil saber o que está acontecendo.

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

  • 0
Em 27/01/2025 em 19:33, Frank K Hosaka disse:

Na célula a1 tenho Categoria, na célula b1 tenho Foto, na célula c1 tenho Junção.

Na célula a2 tenho 1, na célula b2 tenho 1, na célula c2 tenho a função =TEXTO(A2;"00")&"."&TEXTO(B2;"000"), o que dá 01.001

Eu não entendi a função do formulário e do VBA. Se que copiar a fórmula da célula C2 na célula C3, você usa o comando copiar e colar.

Se eu entendi tudo errado, tem jeito mostrar o esquema do formulário (tire uma foto com o comando printScreen) e também  uma lista do código que está dando problema? Sem ver o código, fica dificil saber o que está acontecendo.

Primeiramente muito obrigado amigo pelo retorno, minha experiência é muito pouca em VBA Excel, estou tentando montar esse cadastro de produtos vendo vídeos no Youtube, em anexo está o modelo de formulário, o código que inseri no botão salvar e a planilha que criei para ser a minha base de dados.

Se  você puder me ajudar a como posso criar essa rotina, código ou macro e como posso inserir nessa sequência fico muito grato, pois nos vídeos somente são programações para códigos sequenciais ou que o próprio usuário digita..

Mais uma vez muito obrigado!!!

Um grande abraço!!!

formulário cadastro.jpg

salvar.jpg

PLANILHA.jpg

Link para o comentário
Compartilhar em outros sites

  • 0

Eu sou um péssimo professor, pior que o pessoal do YouTube, mas vamos lá.

Produto é um nome genérico para qualquer coisa que possa ser trocado por dinheiro.

Ninguém faz cadastro de produto, a menos que seja por puro desespero.

Então, abra uma nova planilha, dê o nome de produto (tudo em minúsculo).

Você olha ao seu redor e você vê porta, laptop, celular.

Você digita na célula A1 porta, na célula A2 laptop e na célula A3 celular.

Para ver como funciona um formulário do Excel, crie um formulário com uma caixa de texto e um botão, dê um duplo clique no botão e crie o seguinte código:

Private Sub CommandButton1_Click()
    Dim ws As Worksheet
    Dim nextCell As Range
    Dim productName As String
    
    ' Defina a planilha
    Set ws = ThisWorkbook.Sheets("produto")
    
    ' Obtenha o valor da caixa de texto
    productName = TextBox1.Value
    
    ' Verifique se a caixa de texto não está vazia
    If productName <> "" Then
        ' Encontre a próxima célula disponível na coluna A
        Set nextCell = ws.Cells(ws.Rows.Count, "A").End(xlUp).Offset(1, 0)
        ' Copie o conteúdo da caixa de texto para a próxima célula disponível
        nextCell.Value = productName
    End If
End Sub

Se você tiver um módulo (se não tiver clique em inserir módulo), e dentro dele crie o seguinte código:
 

Public Sub MeuPrimeiroPrograma()
    UserForm1.Show
End Sub

Volte na planilha produto, vá em Desenvolvedor, Macros, e clique em MeuPrimeiroPrograma. Ao invés de você cadastrar o produto na planilha, o formulário é que vai pegar o nome do produto e vai jogar na planilha, escreva maçã e aperte salvar, escreva pera aperte salvar. Viu que bacana? Espero que tenha gostado da aula.

Captura de tela 2025-01-30 211553.png

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,4k
    • Posts
      652,1k
×
×
  • Criar Novo...