Bom dia, sou novo no Fórum. Meu conhecimento de programaçao e vba é bem limitado, Criando um sistema para a confeitaria da minha esposa e travei num determinado ponto. Espero conseguir explicar meu problema
EU tenho o Código abaixo :
Private Sub CommandButton_SALVAR_Click()
' Verificar se algum cliente foi seleciona
If ComboBox_CLIENTE = "" Then
MsgBox " Selecione o Cliente. "
Exit Sub
Else
Worksheets("pedido").Select
Cells(5, 2) = ComboBox_CLIENTE
End If
'Verificar se checkbox dos produtos estão habilitadas,
'caso esteja colocar na planilha produto o item do doce e as quantidades digitadas
'variavel com numero da linha em que será inserida a informaçao
produto = 11
If CheckBox_brigadeiro.Value = True Then
Worksheets("pedido").Cells(produto, 1) = Worksheets("produtos").Cells(36, 1)
'verifica se foi inserido a quantidade
' caso não tenha inserido, exibir mensagem
If TextBox_brigadeiro = "" Then
MsgBox " Insira as quantidades de Brigadeiro, ou desmarque a opção."
Exit Sub
Else
Worksheets("pedido").Cells(produto, 5) = TextBox_brigadeiro
'
' adicionar_linha Macro
produto = produto + 1
'adicionar uma linha abaixo da linah preenchida
Rows(produto).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("11:11").Select
Selection.Copy
Rows(produto).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False ' puxarformula Macro
'
Selection.AutoFill Destination:=Range("D11:D12"), Type:=xlFillDefault
Range("D11:D12").Select
Range("F11").Select
Selection.AutoFill Destination:=Range("F11:F12"), Type:=xlFillDefault
Range("F11:F12").Select End If End If End Sub
ATE A PARTE QUE ESTÁ EM AZUL, TUDO OK,
verifiquei se a caixa com nome dos clientes estão preenchidas e inserir esse valor da caixa para uma célula especifica no Excel
depois eu defini a variável produto, que irá receber o numero da linha do primeiro produto escolhido.
em seguida eu verifico se um checkbox está marcada,e caso esteja eu copio um conteudo da planilha produtos para a planilha pedido ( na linha da variável produto). E depois eu verfico se a caixa de texto foi preenchida, caso tenha sido preenchida jogo o conteúdo dessa caixa de texto para a outra celula da planilha pedido ( na mesma linha da variável produto).
Apos isso, eu adiciono 1 a variável produto, insiro uma nova linha, copio as formatações da linha anterior e colo na linha criada.
ATE AI TUDO CERTO. PROGRAMA FUNCIONA CORRETAMENTE
A parte vermelha é onde eu to com problema. Eu quero eu arraste as formula da celula D11 e F11, ate a linha que foi criada anteriormente,
e não apenas ate a linha D12 e F12.
dessa forma, quando eu escolher 10 ou 15 produtos, a formulas serão arrastada nas 10 ou 15 linha subsequentes.
Pergunta
danielcaitano
Bom dia, sou novo no Fórum. Meu conhecimento de programaçao e vba é bem limitado, Criando um sistema para a confeitaria da minha esposa e travei num determinado ponto. Espero conseguir explicar meu problema
EU tenho o Código abaixo :
Private Sub CommandButton_SALVAR_Click()
' Verificar se algum cliente foi seleciona
If ComboBox_CLIENTE = "" Then
MsgBox " Selecione o Cliente. "
Exit Sub
Else
Worksheets("pedido").Select
Cells(5, 2) = ComboBox_CLIENTE
End If
'Verificar se checkbox dos produtos estão habilitadas,
'caso esteja colocar na planilha produto o item do doce e as quantidades digitadas
'variavel com numero da linha em que será inserida a informaçao
produto = 11
If CheckBox_brigadeiro.Value = True Then
Worksheets("pedido").Cells(produto, 1) = Worksheets("produtos").Cells(36, 1)
'verifica se foi inserido a quantidade
' caso não tenha inserido, exibir mensagem
If TextBox_brigadeiro = "" Then
MsgBox " Insira as quantidades de Brigadeiro, ou desmarque a opção."
Exit Sub
Else
Worksheets("pedido").Cells(produto, 5) = TextBox_brigadeiro
'
' adicionar_linha Macro
produto = produto + 1
'adicionar uma linha abaixo da linah preenchida
Rows(produto).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("11:11").Select
Selection.Copy
Rows(produto).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
' puxarformula Macro
'
Selection.AutoFill Destination:=Range("D11:D12"), Type:=xlFillDefault
Range("D11:D12").Select
Range("F11").Select
Selection.AutoFill Destination:=Range("F11:F12"), Type:=xlFillDefault
Range("F11:F12").Select
End If
End If
End Sub
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ATE A PARTE QUE ESTÁ EM AZUL, TUDO OK,
Editado por danielcaitanoverifiquei se a caixa com nome dos clientes estão preenchidas e inserir esse valor da caixa para uma célula especifica no Excel
depois eu defini a variável produto, que irá receber o numero da linha do primeiro produto escolhido.
em seguida eu verifico se um checkbox está marcada,e caso esteja eu copio um conteudo da planilha produtos para a planilha pedido ( na linha da variável produto). E depois eu verfico se a caixa de texto foi preenchida, caso tenha sido preenchida jogo o conteúdo dessa caixa de texto para a outra celula da planilha pedido ( na mesma linha da variável produto).
Apos isso, eu adiciono 1 a variável produto, insiro uma nova linha, copio as formatações da linha anterior e colo na linha criada.
ATE AI TUDO CERTO. PROGRAMA FUNCIONA CORRETAMENTE
A parte vermelha é onde eu to com problema. Eu quero eu arraste as formula da celula D11 e F11, ate a linha que foi criada anteriormente,
e não apenas ate a linha D12 e F12.
dessa forma, quando eu escolher 10 ou 15 produtos, a formulas serão arrastada nas 10 ou 15 linha subsequentes.
ESPERO QUE TENHA SIDO CLARO
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.