Ir para conteúdo
Fórum Script Brasil

Michelle Alves

Membros
  • Total de itens

    154
  • Registro em

  • Última visita

Tudo que Michelle Alves postou

  1. Obrigada Macedo, já comecei o projeto a partir da sua dica. Mas tenho outra dúvida. Tenho um projeto todo pronto, mas no Excel. Gostaria de passar os Cadastros e armazenamento de dados dele para o Access, mas todas as pesquisas que for realizar terei que conectar ao banco de dados ? Como seria ? Basicamente gostaria de saber se vou ter que refazer todos os scripts de acordo com a conexão Access ou não ?
  2. Esquece foi desespero meu aqui, o List tem a base zero, eu teria que alterar para buscar corretamente. Funcionou e ficou lindo !!!!!! Obrigada demais, Kuroi não faz idéia de como me ajudou..... estava pressionada com isso.
  3. Nossa Kuroi, Esse mês vou ter que dividir meu salário com você, viu..... Olha só, rodou perfeitamente. Mas não somou os valores que lançei no LIst com os que já haviam na planilha BDCQE. Conferi as referências, para ver se alguma tava errada, mas não. Tá tudo certo.
  4. Kuroi, Então, tentar eu tentei e muito... mas minha inexperiência me complica.Devo ter feito alguma declaração errada, pois deu erro de incompatibilidade. Vou postar todo o código para que você possa verificar, e se possível me ajudar em mais essa. Acho que você entendeu exatamente o que necessito, mas minha dúvida foi como declarar o Listbox, pois irá transferir quantas linhas existirem, precisaria declarar alguma variável ? Private Sub AdButton6_Click() ' Macro gravada em 1/3/2009 por Michelle If ComboBox1 = "" Then MsgBox ("Informe o Cliente") Exit Sub End If If TextBox4 = "" Then MsgBox ("Informe o Vendedor") Exit Sub End If If MsgBox("Você tem certeza que deseja finalizar o pedido" & "?", vbYesNo + vbQuestion, "Finalizar Pedido") = vbNo Then Exit Sub End If Application.ScreenUpdating = False 'TRANSFERE VALORES DO FORM1 PARA A PLAN VDA For i = 0 To ListBox1.ListCount - 1 ActiveWorkbook.Sheets("VDA").Activate Range("B5").Select Do If IsEmpty(ActiveCell) = False Then ActiveCell.Offset(1, 0).Select End If Loop Until IsEmpty(ActiveCell) = True ActiveCell.Value = ListBox1.List(i) ActiveCell.Offset(0, 1).Value = ListBox1.List(i, 1) ActiveCell.Offset(0, 2).Value = ListBox1.List(i, 2) ActiveCell.Offset(0, 3).Value = TextBox3.Text ActiveCell.Offset(0, 4).Value = Label7 ActiveCell.Offset(0, 5).Value = ComboBox2.Text ActiveCell.Offset(0, 6).Value = Label10 ActiveCell.Offset(0, 7).Value = ListBox1.List(i, 4) Next i Gridlines = True ' TRANSFERE DADOS DO FORM1 PARA A PLAN BDCQE Set r = Sheets("[bDCQE]").Range("[C2:C500]").Find(What:=Val([Listbox.Listindex, (0, 1)]), After:=Sheets("[bDCQE]").Range("[C2]"), LookIn:=xlValues, LookAt _ :=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False) If Not r Is Nothing Then Sheets("[bDCQE]").Range("[E]" & r.Row) = Sheets("[bDCQE]").Range("[E]" & r.Row) + [Listbox.Listindex, (0, 2)] End If 'COPIA VALOR TOTAL DO FORM1 PARA O FORM3 Dim dados As DataObject 'variável que vai receber os dados a serem copiados Set dados = New DataObject dados.SetText TextBox10.Text 'pegando o texto do text box dados.PutInClipboard 'colocando na área de transferência UserForm3.TextBox6.Paste ListBox1.Clear Plan1.Select Application.ScreenUpdating = True UserForm3.Show End Sub Obrigada.
  5. Então, é assim: Lembra daquela tela de vendas, né ? Ao final, eu finalizo, ai vou armazenar os dados de toda movimentação de vendas, ok ? Além disso, eu tenho uma tabela no excel mesmo com os itens cadastrados, mais ou menos como no exemplo abaixo: Produto Codigo Valor Saidas Entradas Mouse 200 R$ 19 12 50 MP3 800 R$ 30 15 35 MP5 1050 R$ 110 8 20 O que eu queria era que ao finalizar aquela tela de vendas, os itens além de ser armazenados na planilha de movimentação, FOSSEM PARA ESSA TABELA TAMBÉM. MAS LÁ, ELES IAM PROCURAR O VALOR RESPECTIVO DELES NA TABELA E SOMASSEM COM AS SAÍDAS JÁ EXISTENTES. Ou seja, suponhámos que vendi 5 MOUSES, o código procuraria o MOUSE na tabela e acrescentaria esses 5 na coluna SAÌDAS na Tabela, totalizando 17. EDITADO: A quantidade que vai existir na SAÍDA é a soma de tudo que foi vendido.
  6. Ficou confuso mesmo, Kuroi... desculpa. Vou tentar explicar melhor: Estou transferindo os dados daquele List que você me ajudou a fazer a pesquisa para uma planilha, onde lá é armazenado tudo o que foi vendido. Vou ilustrar para ficar mais claro. No Listbox tenhos os seguintes itens: Codigo Produto Valor 200 MOUSE R$ 19 800 MP3 R$ 30 1050 MP5 R$ 110 Esses itens são transferidos para uma planilha de armazenamento. Mas além dela, gostaria de transferir os dados para uma outra planilha, que serve como uma tabela. Na tabela a estrutura é dessa forma: Produto Codigo Valor Saidas Entradas Mouse 200 R$ 19 12 50 MP3 800 R$ 30 15 35 MP5 1050 R$ 110 8 20 Nessa transferência, gostaria que fosse procurado cada item do LISTBOX na tabela e que apenas somasse a quantidade do LISTBOX com a quantidade existente na SAÍDAS. Existe a possibilidade de fazer isso ?
  7. Olá Pessoal, novamente preciso do auxílio do fórum. Estou transferindo os valores de um Listbox para a planilha, utilizando o seguinte código: Private Sub AdButton6_Click() For i = 0 To ListBox1.ListCount - 1 ActiveWorkbook.Sheets("VDA").Activate Range("B5").Select Do If IsEmpty(ActiveCell) = False Then ActiveCell.Offset(1, 0).Select End If Loop Until IsEmpty(ActiveCell) = True ActiveCell.Value = ListBox1.List(i) ActiveCell.Offset(0, 1).Value = ListBox1.List(i, 1) ActiveCell.Offset(0, 2).Value = ListBox1.List(i, 2) ActiveCell.Offset(0, 3).Value = TextBox3.Text ActiveCell.Offset(0, 4).Value = Label7 ActiveCell.Offset(0, 5).Value = TextBox4.Text ActiveCell.Offset(0, 6).Value = Label10 ActiveCell.Offset(0, 7).Value = ListBox1.List(i, 4) Next i Gridlines = True ListBox1.Clear End Sub Porém, além disso, não sei se tem como fazer isso, mas gostaria que os itens que estou transferindo do Listbox para a planilha procurassem o seus respectivos numa tabela que tenho, e somassem os itens nela. Por exemplo: No Listbox tem: código Produto Quant 200 MOUSE 2 Ao finalizar ele procura o 200 nessa tabela e soma com o valor que lá já está, suponhamos tem 5 e ele soma com mais 2 que foram vendidos.
  8. Você viu o que postei antes ?? tente retirando o Sleep e veja se é isso que você quer. Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo Handle_Error Columns("C:G").Select Selection.Interior.ColorIndex = xlNone Range("C1").Select For l = 1 To 10 Step 1 'Só está percorrendo as células da coluna C e verificando se o valor é negativo If Sheets("Cotacao").Cells(l, "C") < 0 Then For i = 1 To 10 Step 1 'Indica quantas vezes piscará cada célula If Sheets("Cotacao").Range(l, "C: D").Interior.ColorIndex = 6 Then Sheets("Cotacao").Cells(l, "C").Interior.ColorIndex = xlNone 'Tira a cor Sheets("Cotacao").Cells(l, "D").Interior.ColorIndex = xlNone 'Tira a cor Else Sheets("Cotacao").Cells(l, "C").Interior.ColorIndex = 6 'Põe a cor Sheets("Cotacao").Cells(l, "D").Interior.ColorIndex = 6 'Põe a cor End If Next i End If Next l 'Exit Sub Handle_Error: Debug.Print "Número: " & Err.Number & vbCrLf & "Descrição: " & Err.Description & vbCrLf & "Linha: " & Erl & vbCrLf End Sub
  9. Agora sim Kuroi, perfeito !!!! Mas aqui, o código é simples para você que é fera !!! Obrigada, viu.
  10. Acho que o Sleep que não foi definido. Retire ele e compile. Não deixe de postar os resultados.
  11. Bom dia, Andreia muito obrigada, vou tentar desta forma. Michelle.
  12. Boa tarde, Eu preciso inserir o with nolock na minha tabela(SQL Server 2005). Mas tenho a seguinte dúvida de como fazer. Eu tenho que inserir em todos os campos? ou somente no select, Update etc? Ex: SELECT [iDCONCOD]with(nolock) ,[iDTRAFO] (este campo também precisa?). Outra dúvida é se estou colocando a clausula no lugar certo. Como foi feito no exemplo acima. Se alguém puder me ajudar.... Muito Obrigada, Michelle.
  13. Tá Legal. O arquivo é aquele mesmo que você já viu. Segue o link: http://www.4shared.com/account/file/918350...este_kuroi.html Se puder me explicar também, porque fiquei muito curiosa para aprender a trabalhar com essa pesquisa. Obrigada
  14. kUROI, Realmente, eu havia definido anteriormente a variável e depois postei sem o exemplo, ela puxava só o primeiro item cadastrado. Mas com teu código foi assim: Rodar o código rodou, mas não puxou dado algum. Tentei da seguinte forma: Private Sub TextBox2_Change() TextBox2.Value = UCase(TextBox2.Value) Pesquisar Dim i As Long Dim sFind As String sFind = TextBox2.Text If Len(sFind) = 0 Then ListBox1.ListIndex = -1 ListBox1.TopIndex = 0 Else For i = 0 To ListBox1.ListCount - 1 If UCase(Left(ListBox1.List(i), Len(sFind))) = UCase(sFind) Then UserForm2.ListBox1.AddItem Range("C" & i).Value UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Range("B" & i).Value UUserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Range("D" & i).Value ListBox1.TopIndex = i ListBox1.ListIndex = i Exit For End If Next i End If End Sub Sub Pesquisar() Dim PrimEndereço, C ListBox1.Clear With Range("a2:d500") 'seu intervalo de pesquisa Set C = .Find(TextBox2, LookIn:=xlValues) If Not C Is Nothing Then PrimEndereço = C.Address Do ListBox1.AddItem C UserForm2.ListBox1.AddItem Range("C" & i).Value UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Range("B" & i).Value UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Range("D" & i).Value Set C = .FindNext© Loop While Not C Is Nothing And C.Address <> PrimEndereço End If End With End Sub
  15. Obrigada Kuroi, espero pode retribuir para outras pessoas. Então, olha só. No FORM1 tem um button que chama PESQUISA, quando clico nele, leva para o FORM2, que já será carregado com todos os itens do cadastro. O que eu queria era que a medida que eu fosse escrevendo o nome do que procuro ele já filtrasse. Deu para entender ou ficou confuso ?
  16. Peço até desculpas antes, pois já estou abusando da boa vontade dos amigos do fórum, principalmente o Kuroi, mas já quebrei a cabeça demais com isso. Vi uma pesquisa na internet, que ao digitar os dados no TEXTBOX o LIST filtra em tempo real. Tentei adaptar para minha situação, mas fiz algo errado e gostaria de entender o que há de errado, para primeiramente aprender essa pesquisa que achei muito interessante e depois incluir ela no meu projeto. Lembrando que no exemplo que vi, ela filtrava num LIST com apenas uma coluna, o meu tem 3 colunas. Private Sub TextBox2_Change() TextBox2.Value = UCase(TextBox2.Value) Pesquisar Dim i As Long Dim sFind As String sFind = TextBox2.Text If Len(sFind) = 0 Then ListBox1.ListIndex = -1 ListBox1.TopIndex = 0 Else For i = 0 To ListBox1.ListCount - 1 If UCase(Left(ListBox1.List(i), Len(sFind))) = UCase(sFind) Then UserForm2.ListBox1.AddItem Range("C" & i).Value UserForm2.ListBox1.List(linha, 1) = Range("B" & i).Value UserForm2.ListBox1.List(linha, 2) = Range("D" & i).Value ListBox1.TopIndex = i ListBox1.ListIndex = i Exit For End If Next i End If End Sub Sub Pesquisar() Dim PrimEndereço, C ListBox1.Clear With Range("a2:d500") 'seu intervalo de pesquisa Set C = .Find(TextBox2, LookIn:=xlValues) If Not C Is Nothing Then PrimEndereço = C.Address Do ListBox1.AddItem C UserForm2.ListBox1.AddItem Range("C" & i).Value UserForm2.ListBox1.List(linha, 1) = Range("B" & i).Value UserForm2.ListBox1.List(linha, 2) = Range("D" & i).Value Set C = .FindNext© Loop While Not C Is Nothing And C.Address <> PrimEndereço End If End With End Sub
  17. Tá certinho Kuroi, fiz confusão aqui, estou desenvolvendo duas coisas ao mesmo tempo, ai eu fico perdida tem hora. Obrigada, viu.
  18. Pois é Kuroi, O raciocínio eu até entendi.... mas como ele vai entender qual a linha selecionada que está sendo excluída? Testei seu exemplo, e vi que ele funciona, mas ele faz confusão na hora de excluir o item e o valor. Atualmente para exclusão eu uso o seguinte script, mais esse comando que você explicou: Ps: se tiver dúvida para visualizar pegue aquele arquivo que te enviei e visualize, se houver deletado segue o link novamente: http://www.4shared.com/account/file/91495722/90ea5794/_2__teste_kuroi.html ' EXCLUI ITEMS NO LISTBOX Public Sub EXCLUI() Dim i As Integer For i = 0 To ListBox1.ListCount If ListBox1.Selected(i) = True Then ListBox1.RemoveItem (i) TextBox10.Text = TextBox10.Text - ListBox1.List(ListBox1.ListIndex, 4) ListBox1.RemoveItem ListBox1.ListIndex End If Next i End Sub
  19. Para as células piscarem quando forem alteradas você deve rodar a macro no evento Change na planilha, dessa forma qualquer alteração que você faça elas irão piscar. E para que percorrer outras colunas você precisa alterar o intervalo selecionado nela: Public Sub Piscar_Tela() On Error GoTo Handle_Error Columns("A:Z").Select Selection.Interior.ColorIndex = xlNone Range("C1").Select
  20. Kuroi Obrigada pela ajuda no tópico anterior, mas só agora percebi que resolvemos aquele problema, mas gerou outro. Se eu deletar um item no LISTBOX, o valor do TEXTBOX10 atualizado, subtraindo o valor do item deletado. Eu sei que para subtrair basta fazer a operação inversa: TextBox10.Text = (TextBox10.Text) - (menos) Mas não estou sabendo fazer a ligação dela, com o código anterior, segue ele abaixo novamente: Private Sub AdButton10_Click() Dim result As Double Dim Acum As Double Dim Total As Double Dim Soma As Currency Dim i As Double i = 0 Acum = 0 result = 0 Total = 0 Soma = 0 If TextBox10.Text = "" Then TextBox10.Text = 0 End If If TextBox5 = "" Then MsgBox "Prencha todos os campos" ElseIf TextBox6 = "" Then MsgBox "Prencha todos os campos" ElseIf TextBox7 = "" Then MsgBox "Prencha todos os campos" ElseIf TextBox8 = "" Then MsgBox "Prencha todos os campos" Else Acum = TextBox7.Text result = TextBox8.Text Total = Acum * result Me.ListBox1.AddItem , ListIndex ListBox1.List(i, 0) = TextBox5.Text ListBox1.List(i, 1) = TextBox6.Text ListBox1.List(i, 2) = TextBox7.Text ListBox1.List(i, 3) = Format(TextBox8.Text, "R$ 0.00") ListBox1.List(i, 4) = Format(Total, "R$ 0.00") Soma = Total + i menos = Total - i TextBox10.Text = (TextBox10.Text) + (Soma) TextBox5 = Clear TextBox6 = Clear TextBox7 = Clear TextBox8 = Clear End If End Sub
  21. Só que acabou aparecendo um outro problema, se eu deletar um item no LISTBOX, o valor do TEXTBOX10 não é subtraído.
  22. Nossa..... testei e não funcionou, veja só: EDITADO: IGNORA, FUNCIONOU SIM, MAS TEM QUE RETIRAR A FUNÇÃO VAL. Mais uma vez obrigada Kuroi !!! Só que acabou aparecendo um outro problema, se eu deletar um item no LISTBOX, o valor do TEXTBOX10 não é subtraído.
  23. Combinado Kuroi. Segue o arquivo. http://www.4shared.com/account/file/914957...este_kuroi.html
  24. Então, esse foi o primeiro jeito que tentei, até que você me mostrou a função Val, porém sem nenhuma função também dá incompatibilidade dos tipos....
×
×
  • Criar Novo...