Problema con funzione chr



  • Non funziona chr
    di Biagicus 74 (utente non iscritto) data: 18/05/2009

    Ciao ragazzi ho usato il codice sottostante per inseire un testo del tipo
    nome
    cognome
    cioè con l'"a capo" in una textbox
    su un excel mi funziona su un altro computer no
    la versione è office 2003
    cosa manca nell'excel che non funziona
     
    protagonisti = "PROTAGONISTI: " & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 6) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 7) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 8) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 9) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 10) & Chr(10)
    


  • Dimenticavo il problema
    di Biagicus74 (utente non iscritto) data: 19/05/2009

    Scusate ho dimenticato di scrivere il problema.
    meglio forse descrivere per bene la situazione: ho una textbox collegata ad una listbox facenti parte di un database creato per calatogare la mia collezione di film. selezionando il film dalla listbox con singolo click, si scorre il database. una volta trovato il film ne sono cariacate in una imagebox la locandina, in varie textbox, regia durata trama genere etc. ho creato anche una textbox multilinea dove caricare i protagonisti ottenuti con il codice scritto sopra.
    ho usato chr con il codice opportuno per simulare l'"a capo". e dal conteggio delle lettere del più lungo nome autodimensiono anche la lunghezza della textbox. questo e sul pc dello studio dove tutto va a meraviglia.
    il pc del salotto (media center) mi dice che non riconosce il chr. all'avvio della macro mi dice che chr è una funzione sconosciuta.
    basta eliminare il chr e subito il modulo torna a funzionare anche se ovviamente si perde l'effetto dell'" a capo automatico" che ottenevo sfruttando chr.
    inoltre mi da un problema simile con la funzione sort che ugualmente non mi riconosce.
    non è la prima volta che mi capita ma di solito ho risolto facendo scorrere manualmente il codice con f8.
    ora non ne vuole sapere
    altra curiosità: nel primo excel (il funzionante) il codice parte senza richiedere la dichiarazione delle variabili al'inizio del muodulo (per intenderci dim), mentre nel secondo non ne vuole sapere di partire se prima con dim non dichiaro tutte le variabili.
    mi aiutate a far andare d'accordo questi due pc



  • di Baz (utente non iscritto) data: 19/05/2009

    Ciao,
    personalmente non ti saprei aiutare, io ho provato sia su 2003 che 2007 e tutte e 3 le istruzioni sotto indicate mi funzionano.

    prova postare il cdice, magari si nota qualcosa "di strano" ....


     
    TextBox1.Value = "a" & vbCr & "b"
    TextBox1.Value = "a" & Chr(13) & "b"
    TextBox1.Value = "a" & vbCr & "b"


  • Ecco il codice
    di Biagicus74 (utente non iscritto) data: 19/05/2009


    ecco il codice quasi completamente commentato per le azioni compiute

    ho allegato anche il foglio di calcolo incriminato
     
    Private Sub ListBox1_Click()
    Dim titolo, image, protagonisti, irow
    titolo = ListBox1.Value
    image = ThisWorkbook.Path & "image"
    For irow = 1 To 200000
    If Sheets(1).Cells(irow, 14) = "" Then GoTo 5
    If Sheets(1).Cells(irow, 14) = titolo Then Exit For
    Next
    Sheets(2).TextBox1 = Sheets(1).Cells(irow, 1) 'titolo
    Sheets(2).TextBox2 = "GENERE: " & Sheets(1).Cells(irow, 2) 'genere
    Sheets(2).TextBox3 = "DURATA: " & Sheets(1).Cells(irow, 3) & " ore" 'durata'
    Sheets(2).TextBox4 = "ANNO D'USCITA: " & Sheets(1).Cells(irow, 4) 'anno d'uscita
    Sheets(2).TextBox5 = "REGIA: " & Sheets(1).Cells(irow, 5) 'regia
    protagonisti = "PROTAGONISTI: " & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 6) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 7) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 8) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 9) & Chr(10)
    protagonisti = protagonisti & Sheets(1).Cells(irow, 10) & Chr(10)
    Sheets(2).TextBox6 = protagonisti
    Sheets(2).TextBox7 = Sheets(1).Cells(irow, 12) 'trama
    Sheets(2).TextBox7.Height = Len(Sheets(1).Cells(irow, 12)) / 105 * 48
    Sheets(2).TextBox8 = "TITOLO ORGINALE: " & Sheets(1).Cells(irow, 11) 'titolo originale
    image = image & Sheets(1).Cells(irow, 13) & ".jpg"
    Sheets(2).Range("a1") = image
    Sheets(2).Image1.Picture = LoadPicture(image)
    5
    End Sub
    



  • di Albatros (utente non iscritto) data: 19/05/2009

    Prova a vedere il vba , strumenti ,riferimento sicuramente troverai una libreria mancante,deselezionala
    fai sapere
    albatros



  • di Albatros (utente non iscritto) data: 19/05/2009

    Scusa dimenticavo , sicuramente la libreria che ti manca e che nel tuo progetto è spuntata e - videosoft vsflex3 controls -
    ciao
    albatros