Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Manckenna

Substrings

Recommended Posts

Este programa teria que retornar as seguintes substrings e apresenta-las no formulário nos Lab 2: First five characters are "This "

Lab 3: Last five characters are 'test '

Label4 : Five characters in the middle are 'is is'

 

Porém os códigos em vermelhos estão dando erros alguém sabe como corrigir ?

 

 

 

Private Sub Command1_Click()

Dim string1 As String

Dim String2 As String

Dim String3 As String

Dim string4 As String

string1 = Text1.Text

String2 = Left(string1, 5)

String3 = Right(string1, 5)

string4 = Mid(string1, 3, 5)

Label2.Caption = "First five characters are "& _ " ' " &

string2 & " ' "

Label3.Caption = "Last five characters are "&_"'"&

string3 & " ' "

Label4.Caption = "five characters in the middle are " &_ " '

" & string4 & " ' "

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desgrude os "&" das aspas duplas e coloque tudo depois do sublinhado (_) na outra linha (até porque esse é o propósito do sublinhado... :blink: ).Abraços,Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal : O motivo de minha pergunta é porque sou iniciante e estou estudando no livro Visual Basic Passo a Passo do Autor Clayton Walnum da Editora Ciência Moderna e esta na página 77 é um programa para retornar substring, porém eu não estou conseguindo inserir o caractere _ (underline) pois da forma como está no livro não parece se tratar de que continua na próxima linha.......veja o código completo abaixo: ESTÁ DESTA FORMA NO LIVRO:Private Sub Command1_Click() Dim string1 As String Dim String2 As String Dim String3 As String Dim string4 As String string1 = Text1.Text String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 3, 5) Label2.Caption = "First five characters are "& _ " ' " & string2 & " ' " Label3.Caption = "Last five characters are "&_"'"& string3 & " ' " Label4.Caption = "five characters in the middle are " &_ " ' " & string4 & " ' " End Sub mas se você quer que apareça na tela o caracter _ então muda um pouco assim: Private Sub Command1_Click() Dim string1 As String Dim String2 As String Dim String3 As String Dim string4 As String string1 = Text1.Text String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 3, 5) Label2.Caption = "First five characters are _ '" & string2 & " ' " Label3.Caption = "Last five characters are _ '" & string3 & " ' " Label4.Caption = "five characters in the middle are _ '" & string4 & " ' " End Sub O interessante é que assim também funciona (excluindo alguns códigos) :Private Sub Comando5_Click()Dim string1 As StringDim String2 As StringDim String3 As StringDim string4 As String string1 = text1.Value String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 6, 5) label2.Caption = "First five characters are " & String2 label3.Caption = "Last five characters are " & String3 label4.Caption = "five characters in the middle are " & string4End Sub ResumindoGostaria de levar a questão para o campo da discussão uma vez que com a ajuda dos amigos as quatro formas abaixo funcionam isto me leva a acreditar que o livro está com o código errado e temos ai então 3 maneiras que o programa funciona mas não funciona conforme está no livro..............isto poderia ser útil para quem está começando a aprender como eu....01Private Sub Command1_Click() Dim string1 As String Dim String2 As String Dim String3 As String Dim string4 As String string1 = Text1.Text String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 3, 5) Label2.Caption = "First five characters are _ '" & string2 & " ' " Label3.Caption = "Last five characters are _ '" & string3 & " ' " Label4.Caption = "five characters in the middle are _ '" & string4 & " ' " End Sub 02Private Sub Command1_Click() Dim string1 As String Dim String2 As String Dim String3 As String Dim string4 As String string1 = Text1.Text String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 3, 5) Label2.Caption = "First five characters are " & String2 Label3.Caption = "Last five characters are " & String3 Label4.Caption = "five characters in the middle are " & string4End Sub03Private Sub Command1_Click() Dim string1 As String Dim String2 As String Dim String3 As String Dim string4 As String string1 = Text1.Text String2 = Left(string1, 5) String3 = Right(string1, 5) string4 = Mid(string1, 3, 5) Label2.Caption = "First five characters are '" & String2 & " ' " Label3.Caption = "Last five characters are '" & String3 & " ' " Label4.Caption = "five characters in the middle are '" & string4 & " ' "End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

E ai cara??O negocio é o seguinte..Qndo você usa o "_" significa que você vai continuar a programacao na proxima linha:portanto:Label2.Caption = "First five characters are " & String2é a mesma coisa deLabel2.Caption = "First five characters are " & _ String2Vale salientar que antes do "_" tem um caracatere "espaço": " _"Vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aproveitando a ajuda do amigo gostaria de acrescentar mais uma "aula" para que os iniciantes como eu possam desfrutar de mais conhecimento, grato a todos.....[Enviado por LIONHEARTEnviado em 06/10/2005 09:24:58Assunto Re:SubstringTexto É o seguinte, Manckenna. Quando você usa o caracter _ fora de uma string, ele deve aparecer no final do seu comando, o que indica que o resto do comando continuará na proxima linha. Se houver este caracter e você continuar os comandos na mesma linha apos ele, irá exibir uma mensagem de erro como foi o seu caso. eu vou te dar 3 exemplos. se quiser testar, no form_load coloque isso aqui. Msgbox "linha 1" & _ "linha 2" & _ "linha 3" & _ "ultima linha" o caso acima vai demonstrar que você está dividindo em 4 linhas diferentes um unico comando. msgbox "linha 1" & "linha 2" & "linha 3" & "ultima linha" agora o mesmo comando está em uma unica linha. (repare que eu não usei o caracter _ para dividi-lo Msgbox "linha 1" & _ "linha 2" & _ "linha 3" & _ "ultima linha" agora, o caso acima, irá retornar 3 ERROS, um para cada _ . o que acontece é que, quando você inserir o caracter _ entre a linha 1 e linha 2, o compilador irá entender que o resto do comando irá estar na proxima linha, e como ainda existe instrução a ser executada por ele após o caracter, ele não saberá qual caminho deverá seguir antes, causando assim um erro de compilação.. É necessário entender que você também não pode inserir COMENTÁRIOS após o caracter _ É por isso que eu digo que o livro está equivocado em situações práticas. A explicação teórica citada por ele está correta, mas o exemplo prático está totalmente errado Eu uso muito este caracter quando tenho que formar instruções encadeadas, umas dentro das outras ou grandes concatenações. Aliás, devo lhe informar também que existe um limite de linhas que podem ser precedidas deste caracter. O limite físico em um mesmo comando é de 25 linhas divididas. Caso você tente inserir a 26º ele retornará imediatamente o erro "Too many lines continuations", mas isso será no tempo de criação do projeto, então não irá te atrapalhar na execução.. espero que isso tire a sua dúvida qualquer duvida ainda existente, seja neste assunto ou em qualquer outro, mande-me uma mensagem interna ou me avise de algum tópico seu que eu te ajudo. Um abraçoThiago Vasques de Araújo INFOMATE in Scania Latin America System Planning & Development se eu te ajudei, por favor, encerre o tópico e AUMENTE minhas ESTRELINHAS

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.