Ir para conteúdo
Fórum Script Brasil

kuroi

Membros
  • Total de itens

    7.184
  • Registro em

  • Última visita

Tudo que kuroi postou

  1. tiago, não sei se eu entendi direito, mas, de acordo com o outro tópico, você ainda ta tendo problemas ai, então acho q o melhor seria você usar nessa formula ai sempre o campo do agrupamento. tipo assim, ai onde esta {Campo}, não ponha o nome do campo q você esta suprimindo. e sim o nome do campo pelo qual você agrupou (aquele q tinha o footer q você tava pondo os dados antes).
  2. tiago, o previous() e o next() so funcionam em campos direto do banco de dados ou em formulas q sejam unicas pra cada registro. exemplo, você não pode usar previous() em formula q faca sum(), porque o sum() é um agrupamento, ele junta varios registros num so, não tem previous nem next. tb formulas q sejam baseadas no estado do relatorio (pagenumber, recordnumber, etc), special fields, running total fields, e parameter fields não vai funcionar. e previous() em uma formula q já tenha previous() muito menos. essa sua formula deve ta dando erro porque se encaxa em alguma das situacoes acima. você vai ter q achar outro jeito pra fazer isso.
  3. marcelo, foi mal a demora, mas não entendi direito sua duvida. se a formula for baseada num grupo não da pra por no recorde selection formula. você teria q por no group selection formula. mas não entendi essa parte aqui: o q você fez exatamente?? se a sua duvida for como escrever o nome do campo na formula, seria assim: {@valor_pagar}
  4. você podia fazer o relatorio apontar pra uma consulta q pegasse o top 1. ou senao você dava supress no details quando o RecordNumber fosse maior q 1.
  5. kuroi

    (Resolvido) MsgBox

    tente trocar o Exit Sub por Cancel = 1
  6. tente declarar assim: Public Declare Sub DecryptPacket Lib "Functions.dll" (ByRef Packet() As Byte, ByVal Length As Long)
  7. kuroi

    VB6 Adodc

    esse codigo aqui acho q não funciona: Adodc1.ConnectionString = conn o conn é um objeto connection, você teria q passar uma string. tente assim: Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\BD.mdb"
  8. o melhor não seria alterar no visual basic mesmo?? não precisa q seja double?? você não precisa das casas decimais??
  9. leandro, se o grid ta associado ao recordset, você não precisa pegar os dados do grid, pegue direto do recordset. exemplo: rs.MoveFirst Do While Not rs.EOF If Label15.Caption = rsTarefas!hora Then MsgBox "Tarefa agendada: " & rs!PEGUE_AQUI_PELO_NOME_DO_CAMPO_E_NAO_PELA_COLUNA_DO_GRID & " PARA " & rs!MESMA_COISA_AQUI & " CONTATO " & rs!MESMA_COISA_AQUI & "" End If rs.MoveNext Loop[/code] agora se você ta editando os dados do grid na mao, sem o vinculo ao recordset, ai você teria q fazer um for ou um while. ai você deveria saber qual a quantidade total de linhas do grid. normalmente ta na propriedade .Rows. exemplo: [code]For i = 1 To GridEX6.Rows GridEX6.Row = i If Label15.Caption = GridEX6.Value(ponha aqui a coluna onde ta a hora) Then MsgBox "Tarefa agendada: " & GridEX6.Value(2) & " PARA " & GridEX6.Value(3) & " CONTATO " & GridEX6.Value(4) & "" End If Next e tb teria q ver se a contagem das linhas não comeca do 0, e se ele conta a linha de cabecalho tb, e adaptar nesse for.
  10. olhai michelle, esse codigo ta funcionando aqui: Private Sub CommandButton3_Click() Dim r As Range ListBox1.Clear If OptionButton1.Value Then Set r = Worksheets("CRM").Range("C2") Do While r.Value <> "" If r.Value = TextBox13.Text Then ListBox1.AddItem r.Value Exit Do End If Set r = r.Offset(, 1) Loop Else Set r = Worksheets("CRM").Range("C4") Do While r.Value <> "" If InStr(r.Value, TextBox14.Text) > 0 Then ListBox1.AddItem r.Value End If Set r = r.Offset(, 1) Loop End If End Sub[/code] agora se você quiser adicionar varias colunas no listbox, você teria q pegar as linhas debaxo. o esquema é declarar um outro objeto range, iguala-lo ao r (dentro do if onde ele encontra os dados digitados), e ir dando offset pra ir descendo as linhas. veja ai, qualquer coisa poste.
  11. vi no otro tópico q você declarou os parametros como double. acho q devia estar como double tb no visual basic (e não como long).
  12. então, você aponta pra celula 6 mas não ta percorrendo as linhas. você ta pegando a celula 6 so uma vez, se tiver duas linhas no grid, você ta ignorando as otras. tem q fazer um for pra ler todas as linhas. você tem descobrir como muda de linha no janus grid. normalmente nos grids, você tem q mudar a propriedade .Row.
  13. michelle, foi mal a demora, vo tentar ver isso hj ou amanha.
  14. kuroi

    Alteração

    orlando, ai você vai ter q adaptar o meu codigo pro resto do formulario. no codigo q passei, repare na linha: If Target.Column = 6 And (Target.Row >= 9 And Target.Row <= 17) Then ela ta fazendo a funcao funcionar somente para a primera parte da coluna das quantidades. pra fazer funcionar pro resto você teria q adaptar, mas tem q ficar de olho pra qual coluna o procv() aponta na planilha de dados. mas sera q o melhor não seria você fazer um formulario (UserForm) pro cara fazer a edicao?? talvez de menos trabalho.
  15. kuroi

    VB6 Adodc

    você ta adicionando o banco na hora de fazer o instalador?? em q pasta você ta adicionando??
  16. leandro, não conheco o janus grid. mas você teria q percorrer todas as linhas pra procurar as horas ne. não sei o q faz a propriedade Value doo grid, mas pelo q parece, no seu codigo, você ta procurando em todas as linhas. e quanto a mudar a cor, ai eu não sei o codigo de mudar a cor do janus grid. se você tb não souber, de uma pesquisada. ai depois de implementar o codigo pra checar todas as linhas, é so por esse codigo na linha q você achou.
  17. kuroi

    Cupom fiscal

    não entendi direito. você diz q ele ta sumindo, porque ele ta ficando pra cima de onde inicia o frame (se é q você ta usando frame mesmo)?? se for isso, ele não ta sumindo, ele so esta mais acima. com uma barra de rolagem (se você seguir o exemplo do tópico), o cara pode descer e subir o picture e ver a informacao q sumiu.
  18. kuroi

    Consulta

    o q acontece se você tirar o where?? ele ta mostrando todos os dados certinho??
  19. kuroi

    Cupom fiscal

    esse tópico aqui deve ajudar: http://scriptbrasil.com.br/forum/index.php?showtopic=127149
  20. faca assim: If rs.State = 1 Then rs.Close rs.Open "select * from clientes", Conex, adOpenDynamic, adLockOptimistic[/code]
  21. olhai: .CommandText = "Select * From Clientes WHERE Codigo_Cliente = " & TxtCodCliente.Text & ";" Set rsSelecao = .Execute[/code] você ainda ta executando o recordset toda hora. não é pra fazer isso, é pra executar so uma vez. cada vez q você executa, ele seleciona td de novo e descarta o q ele tinha antes. assim, ele perde a posicao do cursor e volta pro primero registro.
  22. então, você não pode ficar abrindo e fechando o recordset toda hora. você tem dexa-lo aberto e ai você so vai movimentar o cursor dentro dele. se você descarta o recordset no final da sub, ele perde os dados, quando você abrir de novo, ele vai abrir na primera linha. você tem q declarar o recordset la em cima no generals, e abrir so uma vez (no form_load por exemplo) e so fechar no unload do formulario. e outro erro é esse aqui: If rsSelecao.EOF = True Then rsSelecao.MoveNext End If[/code] ele so vai tenta mover pro proximo quando tiver no fim do arquivo. ai isso daria erro ne. acho q era pra ser assim o q você quer: [code]If rsSelecao.EOF <> True Then ou pra facilitar ainda: If Not rsSelecao.EOF Then
  23. kuroi

    Consultas em VB6

    hehe, faltou por o alias na tabela. eu inventei de por isso pra encurtar o codigo, mas acabei esquecendo do principal. assim: Select cod, nome, Sum(a.nota1) As nota1, Sum(a.nota2) As nota2 From Notas As a Group By cod, nome como imaginei q você tava usando access, acontece q quando você fizer o sum(), ele perde o nome do campo, e você tem q por um alias pro campo. so q ele não permite Sum(nota1) As nota1, porque ele entende q ta tendo dois campos com nomes iguais. ai você teria q fazer Sum(Notas.nota1) As nota1. so q nesse caso eu sempre costumo por um alias curto pra tabela (no exemplo, o alias foi a), assim ficando Sum(a.nota1) As nota1, assim não tenho q ficar digitando o nome intero da tabela. veja ai q o codigo assim deve funcionar.
  24. michelle, ele so pode encontrar um cliente por vez, não é isso?? o listbox vai ter sempre uma linha, não é isso??
×
×
  • Criar Novo...