Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16
  1. #11
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Quote Originariamente inviata da keiji68 Visualizza il messaggio
    potresti usare il metodo split

    codice:
    Dim num As String()
    
            num = TextBox1.Text.Split(","c)
    
            Label1.Text = num(0).ToString & " - " & num(1).ToString
    ciao
    Ho provato e mi da questo risultato:
    3487 - 149876
    come faccio a prelevare soltanto i primi due numeri dell'estrema destra (76) e i primi tre numeri dell'estrema sinistra (348) ?
    Ti ringrazio ancora

  2. #12
    Utente di HTML.it
    Registrato dal
    Jul 2012
    Messaggi
    7
    Quote Originariamente inviata da optime Visualizza il messaggio
    puoi cercare la posizione della virgola usando INSTR; poi, usando quella posizione, vai di MID

    posizione_virgola = instr(numero_completo, ",")
    numeri_a_destra = mid(stringa_intera, posizione_virgola)

    un metodo molto... basic, appunto

    Allora . . . ho provato e come da Tuo suggerimento sono riuscito a trovare la posizione della virgola, adesso mi dici di andare di mid, quindi se io scrivo il seguente codice non mi funziona:
    codice:
    numeriadestra = Mid(risultato, posizionevirgola)
    numeriadestra è la variabile che deve contenere il risultato
    risultato è la variabile del numero con la virgola
    posizionevirgola è la variabile che abbiamo calcolato

    dove sbaglio, è la sintassi sbagliata.

  3. #13
    dai, "non mi funziona" non vuol dire niente sii più preciso, grassie

  4. #14
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551

    Ciao

    Ciao non conosco vb.net , conosco un po vb6, mi sembra che sia sensato in vb.net usare i metodi della classe string, e non le funzioni ereditate da vb6, posto una possibile soluzione.


    codice:
    Module VBModule
     
        Sub Main()
            dim numero as double=3487.149876
            dim strnumero as string =convert.tostring(numero)
            dim  destra as string
            dim sinistra as string
            dim pos as integer 
            pos=strnumero.indexof(".")
            console.writeline(pos)
            destra=strnumero.substring(0,pos)'prelevo una sottostringa da inizio al carattere . 
            if destra.length >3 then ' se la lunghezza è maggiore di 3 prelevo i primi tre 
                destra=destra.substring(0,3)
            end if 
            sinistra=strnumero.substring(pos+1)' prelevo tutta la stringa dal punto a fine stringa 
            if sinistra.length>5 then ' se la lunghezza è maggiore di 5 prelevo gli ultimi 2 
                sinistra=sinistra.substring(sinistra.length-2)
            end if       
            console.writeline(destra)
            console.writeline(sinistra)
            
        End Sub
      
    End Module
    Tecnologia

  5. #15
    prova così.
    devi fare i controlli neccessari al tuo caso.

    codice:
            Dim num As String()
    
            num = TextBox1.Text.Split(","c)
    
            Label1.Text = num(0).Substring(0, 3)
            Label2.Text = num(1).Substring(num(1).Length - 2)
    ciao
    --

    __ [ K3iji ] __

  6. #16
    Utente di HTML.it
    Registrato dal
    Mar 2014
    residenza
    Vicenza
    Messaggi
    318
    Quote Originariamente inviata da ggaamm Visualizza il messaggio
    Ciao SirJo, si tratta di numeri, infatti del numero 3487,149876 devo estrarre i primi tre di sinistra (348) e i primi due di destra (76), ci sono altri casi come il numero 34,23 per il quale devo estrarre il 34 ed il 23, oppure il numero 1,234 in cui devo estrarre l'1 ed il 34, ect....
    Comunque ho dato una sbirciata alle funzioni Math ma non mi sembra che ci sia nulla, forse parzialmente riesce a fare qualcosa la funzione "Truncate" ma c'è il discorso della virgola.
    Fammi sapere.
    ecco qui:
    codice:
           Dim NumDbl As Double = 12.345
    
            MsgBox("Parte intera: " & Math.Floor(NumDbl).ToString & vbCrLf & _
                   "Parte frazionaria: " & (NumDbl - Math.Floor(NumDbl)).ToString)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.