
kuroi
Membros-
Total de itens
7.184 -
Registro em
-
Última visita
Tudo que kuroi postou
-
então, esse ai funcionou aqui tb. é so copiar tudo q ta no zip, abrir a ROM e já era. entretanto nessa pagina aqui q você passou, ele diz la em cima q esse q eu passei é uma versao mais nova. mas quanto a esse link q você passou, ele abre o prompt, se eu digitar aqui por exemplo print "xxx" ele printa normal. ai seila, o q eu não manjo é de python, tentei aqui um execfile nos arquivos q vem de exemplo, mas não consegui, veja ai se consegue. mas se nem o print você ta conseguindo, então talvez não seja compativel com o seu sistema, qual o flashcard q você usa?? dependendo você pode precisar de um patch para a rom.
-
acho q alguma coisa assim: Dim m As Control For Each m In Frame1.Controls m.Enabled = False Next[/code]
-
olha la no tutorial. nas primeras linhas, ele fala quais as referencias q você tem q adicionar. a numero 1 é a do ADO, acho q você já deve ter adicionado. agora a do ADOX q ta dando erro é a numero 2. a numero 3 acho q você não vai usar.
-
tenta isso: COD_EXTR2 = "H" & LIN & Chr(34) & "-" & Chr(34) & "EXT.TEXTO(I" & LIN & ";4;1)"
-
carolina, mas você ta usando DAO no seu projeto?? você tem q adicionar a referencia então (Microsoft DAO 3.51 Object Library). mas tem algum motivo especifico pra você tar usando DAO?? o DAO é um componente antigo, hj em dia usa-se o ADO q é muito melhor (como no exemplo q passei).
-
qual o compilador q você encontrou?? eu baxei esse aqui: http://www.develer.com/~lmancini/dspython/ e funcionou aqui no meu r4. o q acontece é q cada vez q você abrir a rom, ele vai executar o arquivo q tiver na pasta python com o nome de main.py. ai acho q o q você teria q fazer seria instalar um programa separado de bloco de notas (tenta esse daqui: http://ds.spacemonkeymafia.com/txtwriter.php), editar o arquivo do jeito q quiser e ai pra testar o codigo, você vai la e carrega a rom.
-
nunca ouvi falar nd sobre isso, mas o q você podia fazer seria então, criar uma variavel publica de controle. ai você faz o seguinte, sempre q você quiser q aborte td, antes do exit sub você troca essa variavel pra true. ai você tem q ver. sempre q uma funcao chamar uma outra, quando voltar você testa se essa variavel não é true. se for você chama o exit sub de novo. exemplo: Dim sair As Boolean Private Sub Form_Load sair = False End Sub Private Sub sub1 - codigo - sub2 If sair Then Exit Sub End If - codigo - End Sub Private Sub sub2 - codigo - If [x] Then 'aqui significa q ocorreu o erro sair = True Exit Sub End If End Sub[/code] so q você teria q ficar de olho q depois tem q por sair = False de novo. você podia por isso no inicio de cada sub. pode parece meio chato, mas não sei se tem otro jeito.
-
carolina, aqui ensina como faz isso: http://www.macoratti.net/adox.htm veja onde ele faz um foreach pra mostrar todos os nomes de tabelas. faca o foreach tb e se o nome q você quer não aparecer é porque a tabela não existe.
-
hehe entendi agora, mas na verdade foi muito bem pensado, levando em conta q você não conhecia otras funcoes.
-
se eu entendi o q você quer, é so escrever End
-
ai michelle, a sub ficou assim ó: Sub Pesquisar() Dim PrimEndereço, C As Range ListBox1.Clear With Sheets("BDCQE").Range("B2:B500") 'seu intervalo de pesquisa Set C = .Find(TextBox2.Text, LookIn:=xlValues, LookAt:=xlPart, MatchCase:=False) If Not C Is Nothing Then PrimEndereço = C.Address Do UserForm2.ListBox1.AddItem Sheets("BDCQE").Range("C" & C.Row).Value UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Sheets("BDCQE").Range("B" & C.Row).Value UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 2) = Sheets("BDCQE").Range("D" & C.Row).Value Set C = .FindNext(After:=C) Loop While Not C Is Nothing And C.Address <> PrimEndereço End If End With End Sub[/code] o q eu mudei foi: 1 - sempre q for acessar o range, tem q especificar a planilha na frente, senao ele vai procurar na planilha atual. 2 - você tava passando as colunas trocadas no listbox. 3 - o findnext tem q ter o After:=C dentro. e ai funcionou aqui, mas tem q alterar tb o TextBox2_Change(). apaga essas linhas: [code]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 q elas vao atrapalhar, isso já ta sendo feito no Pesquisa. alias, pode apagar td, não sei qual a finalidade do codigo q ta la, mas pelo menos pra esse filtro acho q não vai servir. e tb tem q adicionar o codigo pra ele poder carregar os dados de novo, caso ele apague o texto do textbox pode dexar a sub assim ó: Private Sub TextBox2_Change() TextBox2.Value = UCase(TextBox2.Value) If TextBox2.Text = "" Then UserForm_Initialize Exit Sub End If Pesquisar End Sub[/code] quanto ao codigo é ate simples de entender, ó: primero, a cada tecla digitada no textbox, ele procura o texto no range q você quer. quando ele acha, ele fica num loop q insere os dados no listbox e chama o findnext ate chegar não encontrar mais nd.
-
então mas o codigo q passei so alterava as otras colunas, pelo menos a primera era pra continuar funcionando. se quiser manda a planilha.
-
nossa e como ia ficar com o replace?? encontrar arroba numa string?? o strpos faz exatamente isso não?? e retorna a posicao onde esta. com replace nem imagino o q fazer.
-
entendi, acho q o problema no seu codigo é q a varaivel linha não existe. tenta fazer assim ó: UserForm2.ListBox1.List(UserForm2.ListBox1.ListCount - 1, 1) = Range("B" & i).Value substitua linha por UserForm2.ListBox1.ListCount - 1 nas quatro linhas.
-
acho q é o strpos q ele quer não?? http://br.php.net/function.strpos
-
hum, mas naquela sua planilha la... qual seria a finalidade desse listbox?? tipo o q você quer q ele faca?? EDITADO: e pode ir perguntando o q quiser, o forum tai pra isso mesmo
-
mas michelle, o seu listbox vai ter multiselect?? eu olhei sua planilha aqui e a sua listbox so permite q você selecione uma linha por vez. esse codigo q você ta usando seria pra excluir caso ele tenha selecionado varias linhas, o q não vai acontecer, a não ser q você mude a propriedade MultiSelect. do jeito q ta agora, se você fizer so isso deve funciona: Public Sub EXCLUI() TextBox10.Text = TextBox10.Text - ListBox1.List(ListBox1.ListIndex, 4) ListBox1.RemoveItem ListBox1.ListIndex End Sub[/code]
-
então michelle, mas você tem q fazer esse codigo numa sub diferente ne. você não tem um botao excluir ou qualquer coisa assim?? então, no clique dele sim você tem q subtrair. ai você pega o valor da linha selecionada do listbox. exemplo: Private Sub CommandButton1_Click() TextBox10.Text = TextBox10.Text - ListBox1.List(ListBox1.ListIndex, 4) ListBox1.RemoveItem ListBox1.ListIndex End Sub[/code]
-
o q você quer dizer com "não me atende"?? qual o problema do salvar como??
-
acontece esse erro da primera vez porque o textbox10 ta em branco. inicializa ele com 0, ou antes de somar, adiciona a linha: If TextBox10.Text = "" Then TextBox10.Text = 0 e acho q o melhor é desabilitar ele pra edicao tb ne.
-
hum, mas olha como to fazendo aqui: michelle.rar da uma olhada no codigo. se você clicar no botao vai ver q vai somar certinho. se quiser, manda sua planilha q eu olho...
-
michelle, então tente fazer assim direto ó: TextBox10.Text = TextBox10.Text + Soma to reparando q ele reconhece o R$ como sendo parte do formato, ele não vai considerar como string, então não precisa converter, tenta ai.
-
michelle, qual o formato q ta no textbox?? tipo o numero 1500,75 apareceria como?? 1.500,75?? 1500,15?? 1,500.75?? 1500.75?? tem R$ na frente??
-
então use CDbl()
-
michelle, pra acessar a coluna 4 do grid é o mesmo codigo q você usa pra preencher ne. é so pegar aqui: TextBox1.Text = TextBox1.Text + ListBox1.List(i, 3) entretanto, acontece q dentro da list o valor ta formatado como string com R$ e tudo ne. ai vai dar mais trabalho, você vai ter q usar Replace() pra tirar o R$ e muito possivelmente ter q usar o Val() ou CDbl() pra converter (como no exemplo la em cima). entretanto, seria mais facil no exemplo q eu passei, você pegaria direto o valor q ta sendo adicionado. porque se você pegar a cada vez, a soma vai ficar certa não??