
kuroi
Membros-
Total de itens
7.184 -
Registro em
-
Última visita
Tudo que kuroi postou
-
david, esse tópico é de 2008, a não ser q ela tenha repetido de ano duas vezes, ela não precisa mais do exercicio, fique de olho na data do tópico antes de responder. mas fica ai o exemplo, se ajudar a alguém.
-
no caso ai esse Item é somente o nome de uma variavel. no vba, você não precisa definir a variavel pra comecar a usa-la (a não ser q você escreva Option Explicit na primeira linha de codigo, o q te obriga a declarar todas as variaveis), so de você escrever o nome dela no meio de uma operacao ela já é declarada no mesmo momento como sendo do tipo Variant (q pode ser convertida a qualquer momento pra qualquer tipo), e imediatamente convertida para o tipo usado na expressao. no exemplo, caso a variavel Item já não esteja definida la em cima no Generals ou como publica num Module, está acontecendo exatamente como descrevi acima. assim q ele entra no For Each, ele aloca na memoria uma variavel do tipo Variant com o nome de Item. logo em seguida, ela é convertida para o objeto WorkSheet para poder apontar para a primeira planilha encontrada em ActiveWorkbook.Sheets. na proxima entrada no for, ela passa a apontar para a proxima planilha ate chegar no final. terminando a sub, a variavel Item é destruida de memoria. o Debug.Print() serve pra escrever qualquer coisa na janela de verificao imediata (q serve pra verificar conteudos de variaveis, retornos de funcoes e etc em tempo de execucao), aperte Ctrl + G na janela de codigos pra chama-la. aqui tem mais explicacoes de como você se aproveitar dela: http://scriptbrasil.com.br/forum/index.php...st&p=613934
-
pode ser numa coluna especifica ou na planilha toda. se você usar o metodo .Find() no Selection, ele vai procurar somente entre as celulas q estejam selecionadas no momento. se não tiver selecionado nada, ele deve procurar na planilha toda, acho q é exatamente isso q faz o codigo q você postou la em cima. se você quiser pesquisar numa determinada coluna independente do selection, por exemplo, na coluna A, você pode usar o .Find() direto nela, assim Range("A:A").Find(). caso você queira pesquisar na planilha toda, independente do selection, acho q você pode fazer Cells.Find() ou Range("A:Z").Find(). não entendi direito. o primeiro caso q você fala seria buscar percorrendo a planilha sem usar o .Find() e o segundo seria buscar usando o .Find()?? se for isso, você pode montar um codigo q possa pesquisar qualquer nome sem precisar ser alterado em qualquer um dos casos. se você precisa saber em q linha acaba a coluna pra poder buscar ate o final dela, você pode usar esse codigo: Dim ultima_linha As Long ultima_linha = xlw.Application.Cells(xlw.Application.Cells.Rows.Count, numero_da_sua_coluna).End(xlUp).Row[/code]
-
(Resolvido)Data report modo paisagem/retrato
pergunta respondeu ao Denis_Rave de kuroi em Visual Basic
instale o Service Pack 6 do Visual Basic 6, e ai você podera usar a propriedade .Orientation. -
o underline server pra separar uma instrucao em varias linhas. acontece, q depois de "What:=MaxVal,", a instrucao ainda continua, são passados mais parametros para o mesmo metodo (perceba q esta tudo dentro do mesmo parenteses aberto no .Find()), mas pra linha não ficar muito longa, separam com o _ pra continuar embaixo. bom, acho q em ingles "xl" funciona tipo como uma abreviacao de excel, deve ser pronunciado exatamente da mesma forma. mas no caso, não significa mta coisa, xlValues, xlPart e etc são constantes já definidas dentro do vba do excel, e os caras q desenvolver o vba, acharam q "xl" era uma boa forma de identificar as constantes do excel. ou seja, só servem pra identificar as constantes. se você passar o MatchCase como True, ele vai diferenciar maiusculas de minusculas (por exemplo, ele vai achar q "Kuroi" é diferente de "kuroi"). se você passar False ele não diferencia. o LookIn define se a busca vai ser feita nas formulas q estao dentro das celulas, ou no texto q esta nela (o resultado da formula). o LookAt é pra definir se a busca deve encontrar o termo no conteudo todo ou só em parte dele. exemplo, se na celula esta escrito "eu sou o kuroi" e você passar xlPart buscando por "kuroi", ele vai encontrar, pois o xlPart diz q o termo procurado por estar em qualquer lugar no conteudo da celula. agora pra setar q você quer procurar no conteudo todo, se não me engano a constante se chama xlWhole. ai nesse caso, se você buscar "kuroi", ele não vai considerar encontrado no texto "eu sou o kuroi". ele só encontraria se você tivesse buscado pelo texto completo "eu sou o kuroi". não necessariamente. vai la na sua planilha e aperte Ctrl + L se não me engano (ou procure no menu pela opcao Localizar). tudo q o metodo .Find() faz é simular a mesma busca q a funcao localizar da planilha faz. ou seja, você não pode fazer nd alem do q as opcoes q você ve la permitem. tem bastante opcoes, mas por exemplo, se você quiser buscar um valor dentro de um range... exemplo, quero encontrar todas as celulas q tenham valores maiores q 100 e menores q 200, acredito q o .Find() não faca esse tipo de busca, você teria q percorrer a planilha com um codigo feito por você mesmo.
-
Quantas propriedades do css você consegue dizer em 7 minutos?
tópico respondeu ao Matheus Matos de kuroi em Entretenimento
nossa só vi esse tópico hoje. lembrei de 45, faltaram 77 pra mim. mas na verdade, consegui lembrar da maioria das q eu conhecia, mas foi mta burrice, porque tem propriedade q se você lembrar de uma, você lembrou de quatro só de uma vez. e meu deus do ceu, o q é hehhe?? na sala de entretenimento já tinha o tópico sobre o teste do html, acho q fui eu mesmo q abri. se não se importam, moverei esse tópico pra la tambem, acho q se encaixa melhor la. -
mas se o numlinha for sempre 2, ele vai escrever sempre na linha 2, ue. ainda é aquilo q falei no post de cima.
-
você quer q todos os itens selecionados do listbox sejam escritos na planilha em linhas diferentes?? o codigo deve ser mais ou menos esse, só q ele esta escrevendo todos na mesma linha, um sobrepondo o outro. no final deve ter só um dos itens escrito na planilha. você deveria ir somando o numlinha dentro do if.
-
michel, fique de olho na sala q você posta. você postou em windows, não tem nd a ver com o assunto, moverei pra php. quanto ao erro, nunca vi um if imprimir qualquer coisa. você tem certeza q é dai q vem o 0?? vai pondo uns echos no meio do seu codigo pra saber por onde ele ta passando. mas já vi uns erros em seu codigo, você ta tentando pegar os valores do $_POST[] sem aspas nos nomes dos campos. acho q era isso q você queria fazer, não?? $nome = $_POST["nome"]; $endereco = $_POST["endereco"]; $email = $_POST["email"]; $senha = $_POST["senha"]; $nivel = 1; $salvar = true;[/code]
-
veja se ajuda: http://www.macoratti.net/vbn_prn2.htm
-
(Resolvido) Visual Basic 6.0 com Tabela em Banco de Dados SQL Compact
pergunta respondeu ao Danleonhart de kuroi em Visual Basic
não deve precisar incluir nenhuma referencia. o ado deve conseguir acessar o provider oledb sozinho. e caso exista algum componente pra facilitar a conexao, possivelmente deve ser compativel com o .net mas não com o vb6. você não conseguiu checar os providers como falei no post acima?? um outro modo de confirmar se esse provider q você usa existe, seria pesquisar o nome dele Microsoft.SQLSERVER.CE.OLEDB.3.5 dentro do regedit e checar se aparece dentro de HKEY_CLASSES_ROOT. apesar de q acho q a gente vai acabar no mesmo lugar... essa dll q você falou deve ser referente ao provider, então significa q provavelmente ele esta instalado e deve ser esse mesmo Microsoft.SQLSERVER.CE.OLEDB.3.5, mas pelo menos poderiamos confirmar do modo como passei naquele post. encontrei tb um link q deve instalar esse provider. de uma olhada: http://www.microsoft.com/downloads/en/deta...;displaylang=en tente instalar, e se continuar dando erro, descartamos a possibilidade de problema com o provider. e nesse caso vai ficar dificil. apesar de você ter dito não esquece q você ta tentando usar a versao mais recente do software de 2008 em um outro de 1998 já ultrapassado. os fabricantes não dao mais atencao ao visual basic. pelas pesquisas q fiz por ai, tb encontrei mta gente com dificuldade de faze-lo o sql ce funcionar no vb6, e nenhuma formula garantida pra fazer funcionar. mas tente esse link q passei. -
desse jeito, ele deve checar na memoria do pc atual se a aplicacao já não esta aberta. em rede, mesmo q venham do mesmo .exe no mesmo diretorio, deve ser possivel abrir 1 de cada em cada pc.
-
não entendi nd...
-
"selecionar" todos os itens?? não deu pra entender direito o q você quer... e afinal é uma combobox ou uma listbox?? se você quer q todos os itens fiquem selecionados ao mesmo tempo, vai funcionar somente na listbox, é só você setar a propriedade .Selected(indice) como True para cada item (onde, no exemplo, indice é o numero do item, comecando no 0). agora se o q você quer é, nesse seu codigo comparar o texto de cada item com a celula da planilha, então faca um for q va de 0 até .ListCount - 1, e já comparando a propriedade .List(indice) do combobox.
-
Meu AJAX e IE 7 não se entendem (ajuda)
pergunta respondeu ao Maicon_S de kuroi em Ajax, JavaScript, XML, DOM
tente adicionar clear: both; em #rodape. se não funcionar, tente um float: left; tanto em #rodape quanto em #pagina. aparentemente parece ser um problema semelhante com o q tive aqui: http://scriptbrasil.com.br/forum/index.php?showtopic=132783 é mesmo um gde misterio... agora, na pior das hipoteses, você podia por um setInterval() no javascript q ficasse comparando os dados do banco com os q estao na pagina e, se fossem diferentes, atualizar. só q isso tem q ser muito bem estudado, pois pode dar problema se varias pessoas estiverem usando a mesma pagina. -
da uma lida na descricao no inicio do codigo. você deve estar passando "thumbs.php?maxsize=..." no src do img, se você não quer q redimensione, passe somente o endereco da imagem e mais nd.
-
mostre pra nós um exemplo de onde ocorre isso, só falando assim não da pra saber. se o site não estiver hospedado, ia ser bom q você passasse o codigo e uns prints mostrando o problema. se tiver hospedado, mande só o link pra verificarmos.
-
links aleatórios não podem se repetir
pergunta respondeu ao Junior STR de kuroi em Ajax, JavaScript, XML, DOM
no lado do servidor você faria isso facil usando a session. agora, no javascript, cada vez q a pagina é carregada de novo, todo o javascript é recarregado tb, o jeito acho q vai ser gravar num cookie os numeros dos links q já tiverem sido mostrados, olhe ai: http://www.w3schools.com/JS/js_cookies.asp -
tenta tirar os parenteses. assim: Shell "C:\Teste.txt" EDITADO: reparei agora tb q você ta tentando abrir um txt. a funcao Shell() acho q não abre txts, somente executaveis. você pode em vez disso chamar o bloco de notas: Shell "notepad ""C:\Teste.txt""" ou usar a api ShellExecute().
-
eu lembro q quando tentei fazer isso há muito tempo atras, não consegui... inclusive, um dos meus primeirs topicos aqui no forum foi sobre isso... na época eu acabei achando q não fosse mesmo possivel fazer isso automaticamente, mas hj eu tenho minhas duvidas, já q na epoca eu devia estar abrindo o recordset como estatico e não pensei na possibilidade de abrir de outro modo. o problema é q não to com o vb6 aqui pra testar... mas, primeiro de tudo, se você estiver preenchendo o flexgrid alterando os valores das celulas na mao (com o .TextMatrix() por exemplo), ai não vai funcionar mesmo. só deve funcionar se o grid estiver vinculado com o recordset a partir da propriedade DataSource. e no caso, acho q o MSFlexGrid não serve pra ser vinculado com um recordset ADO, você teria q usar o MSHFlexGrid (Hierarchical Flex Grid). ou talvez ainda seja uma opcao melhor usar o DataGrid mesmo. e só deve funcionar se você deve setar o CursorType do recordset como adOpenDynamic. fora isso, eu diria q você teria q setar o CursorLocation da conexao como adUseServer. o problema é, se não me engano, o recordset não pode ser vinculado ao grid a não ser q seja aberto como adUseClient. não tenho certeza agora, mas dê uma testada. tente com os dois tipos de CursorLocation, e se não funcionar no MSHFlexGrid, tente no DataGrid. se nd disso funcionar, o jeito é usar a dica do graymalkin no ultimo post desse tópico: http://scriptbrasil.com.br/forum/index.php?showtopic=49445 EDITADO: mas a dica do graymalkin só iria detectar alteracoes feitas por outras pessoas usando o mesmo programa. se alguém abrir o banco de dados e alterar na mao, ai não ia dar pra saber.
-
É possivel mudar o texto de um e-mail recebido?
tópico respondeu ao barbaralb de kuroi em Outros Assuntos
oi barbara, então se o email esta impresso, a historia muda né... todo o conteudo pode ter sido forjado, é bem possivel. no email q você viu impresso, você consegue dizer se foi impresso direto no navegador?? por exemplo, você consegue ver os menus do webmail do lado, como se você estivesse na interface do hotmail, por exemplo?? se for esse o caso, a possibilidade de ter sido adulterado é menor, mas completamente possivel, acho q o cara nem precisa ser tão habilidoso. agora, ele diz q o email teria sido baixado num programa como o outlook, por exemplo, certo?? nesse caso, primeiro de tudo, seria muito facil de o texto impresso ter sido forjado, já q os emails impressos a partir do outlook são mais faceis de imitar. fora isso, se não me engano, o outlook permite a você editar livremente o email q você tiver recebido. nesse caso é possivel de o email estar adulterado mesmo na caixa de entrada da pessoa. mas nesse caso, se você abrir a mensagem, você deve conseguir saber se foi alterada alguma coisa. dê uma olhada pra ver se o outlook mostra algum campo do tipo "data da alteracao" ou coisa assim. isso prova q o conteudo da mensagem foi editado (mas não sei se é possivel descobrir o conteudo original). agora, se estiver claro q a pessoa q imprimiu simplesmente copiou o texto do email no word e mandou imprimir, você já tem motivos pra desconfiar... mas, resumindo, barbara, a partir do email impresso fica muito dificil de encontrar qualquer evidencia de modificacao. o unico jeito de tentar descobrir seria você olhar o email direto na caixa de entrada da pessoa e checar as informacoes q passei no post de cima e nesse. caso o email ainda esteja hospedado no webmail, é mais confiavel olhar nele do q no outlook. caso ele tenha baixado no outlook e deixado uma copia no servidor, se possivel, tente comparar os dois tambem. só não entendi essa parte... -
realmente, acho q tem erro no select. ele deve ta dando EOF logo no comeco e por isso, depois acaba repetindo as imagens. tente usar o select assim: "SELECT ordem.poltrona As n_poltrona, x.poltrona As reservado FROM ordem LEFT JOIN (Select * From transporte WHERE onibus = 'ONIBUS 01') as x ON ordem.poltrona = x.poltrona ORDER BY ordem.ordem" se essa não der certo, tente assim tb: "SELECT ordem.poltrona As n_poltrona, transporte.poltrona As reservado FROM ordem LEFT JOIN transporte ON ordem.poltrona = transporte.poltrona WHERE IsNull(transporte.onibus) Or transporte.onibus = 'ONIBUS 01' ORDER BY ordem.ordem" agora, acho q você preencheu a tabela com os 60 registros pra cada celula da tabela, certo?? mas a minha ideia inicial era q você pusesse somente as poltronas, os espacos em branco não precisaria. o q você preencheu no campo "poltrona" quando for um espaco em branco?? olha, se você apagar os espacos em branco da tabela, o codigo deve ser mais ou menos assim: <table> <% For x = 1 to 60 If (x - 1) Mod 12 = 0 Then Response.Write("<tr>") End If If (x - 1) \ 12 <> 2 And x <> 37 And x <> 49 Then If Not RSonibus.EOF Then If Not IsNull(RSonibus("reservado")) Then Imagem = "xx" Else Imagem = Right("0" & RSonibus("n_poltrona"), 2) End If RSonibus.MoveNext End If %> <td><img src="img/poltr<% = Imagem %>.gif" width="31" height="28"/></td> <% Else %><td> </td><% End if If x Mod 12 = 0 Then Response.Write("</tr>") End If Next %> </table>[/code] agora, se você quiser deixa-los, não tenho certeza de como você preencheu na tabela, mas acho q o codigo seria esse: [code]<table> <% For x = 1 to 60 If (x - 1) Mod 12 = 0 Then Response.Write("<tr>") End If If Not RSonibus.EOF Then If RSonibus("n_poltrona") = "" Then %><td> </td><% Else If Not IsNull(RSonibus("reservado")) Then Imagem = "xx" Else Imagem = Right("0" & RSonibus("n_poltrona"), 2) End If %> <td><img src="img/poltr<% = Imagem %>.gif" width="31" height="28"/></td> <% End If RSonibus.MoveNext End If If x Mod 12 = 0 Then Response.Write("</tr>") End If Next %> </table> naquela linha If RSonibus("n_poltrona") = "" Then, dentro das aspas você tem q colocar o texto q colocou no campo "poltrona" quando forem as colunas em branco (pra funcionar tem q ser o mesmo texto em todas). se você tiver deixado em branco, deixe o codigo como está, ou se na funcionar, tente assim If IsNull (RSonibus("n_poltrona")) Then veja se funciona agora.
-
frata, você já postou isso antes: http://scriptbrasil.com.br/forum/index.php?showtopic=152568 não encontrei pra download no site da microsoft... e links ou instrucoes pra downloads alternativos não podem ser postados aqui no forum, beleza?? então nesse caso não vamos poder te ajudar por aqui...
-
rede3d, você pode fazer um select antes do insert pra ver se já não existe. exemplo: <% sql = "Select * From fotos Where ambiente = '" & ambiente & "'" Set rs = Conexao.Execute(sql) If Not rs.EOF Then Response.Write("já foi cadastrado!") Else sql = "Insert into fotos (ambiente, foto1, foto2, foto3, foto4) values ('"& ambiente &"', '"& cfoto1 &"', '"& cfoto2 &"','"& cfoto3 &"','"& cfoto4 &"')" Conexao.Execute(sql) End If %>[/code]
-
helinho, só você seu post hj... se você ainda não tiver resolvido, de uma olhada, dei uma mexida no codigo... a verdade é q eu tinha me confundido com a minha propria dica num post mais acima... e só agora acho q entendi direito como ta funcionando o seu site... você não tem nenhuma tabela no banco de dados onde estejam gravadas todos os assentos, certo?? me fala como você sabe a ordem dos assentos q tem q escrever?? como você sabe q comeca no 45?? se você não tem isso definido em nenhum lugar, acho q a aquela ideia do campo ordem de q falei teria q estar numa tabela separada. exemplo, crie uma tabela chamada "ordem" com os campos "poltrona" e "ordem". e então faca, dentro dessa tabela, aquele esquema de q comentei: depois disso, na hora de fazer o select, faca assim: SELECT ordem.poltrona As n_poltrona, transporte.poltrona As reservado FROM ordem LEFT JOIN transporte ON ordem.poltrona = transporte.poltrona WHERE transporte.onibus = 'ONIBUS 01' ORDER BY ordem.ordem depois disso, fica bem mais facil de montar a tabela, porque já estara vinculado ao recordset se esta reservada ou não. <table> <% For x = 1 to 60 If (x - 1) Mod 12 = 0 Then Response.Write("<tr>") End If If x \ 12 <> 2 And x <> 36 And x <> 48 Then If Not RSonibus.EOF Then If Not IsNull(RSonibus("reservado")) Then Imagem = "xx" Else Imagem = Right("0" & RSonibus("n_poltrona"), 2) End If RSonibus.MoveNext End If %> <td><img src="img/poltr<% = Imagem %>.gif" width="31" height="28"/></td> <% Else %><td></td><% End if If x Mod 12 = 0 Then Response.Write("</tr>") End If Next %> </table>[/code] deve ser mais ou menos isso, ve se eu acertei nas quebras de linha. se você quiser q tenha borda, ponha border="1" na tabela.