Link troncato [risolto]

di il
9 risposte

Link troncato [risolto]

Ciao a tutti, ho un problema con una variabile di tipo string. Da VBA ho creato uno script che mi va a creare un recordset necessario per popolare una mail in fomato HTML. Uno dei campi estrapolati dal recordset, contiene un link che riporto su un TAG "<a href...". Bene, sulla variabile viene memorizzato il link, ma troncato.

Sapete darmi qualche suggerimento?

Grazie mille

9 Risposte

  • Re: Link troncato [risolto]

    Che suggerimento vuoi se non sappiamo altro?
  • Re: Link troncato [risolto]

    Hai ragione, scusami, ti giro il codice della pagina incriminata:

    Private Sub btnInvia_Click()
    
    Dim rst As dao.Recordset
    Dim messaggio As String
    Dim testo As String
    Dim messaggiook As String
    Dim file As String
    
    Set rst = Me.Recordset
    
    rst.MoveFirst
    Do Until rst.EOF
    testo = testo & "<table style='background-color: #153e7e;' style='border-color:#153E7E;' cellspacing='0' cellpadding='2' border='1'>"
    testo = testo & "<tbody>"
    testo = testo & "<tr>"
    testo = testo & "<td style='background-color: #153e7e;' align='center'><font size=3><span style='color: #ffffff;'><strong>Lotto n.</strong></span></td>"
    testo = testo & "<td style='background-color: #153e7e;'><font size=3><span style='color: #ffffff;'><strong>Data pubbl.</strong></span></td>"
    testo = testo & "<td style='background-color: #153e7e;'><font size=3><span style='color: #ffffff;'><strong>Link </strong></span></td>"
    testo = testo & "</tr>"
    testo = testo & "<tr>"
    
    messaggio = messaggio & "<td align='center'> <font size=3><b>" & CStr(Me!nLotto) & "</b></td> <td align='center'><font size=3>" & rst.Fields("dtInsIVG") & "</td>"
    messaggio = messaggio & "<td align='center'><font size=3> [b]<a href='" & CStr(Nz(me!link, "--")) & " '>link</a></td> <td align='center' <font size=3>[/b]" & rst.Fields("dtinsPVP") & "</td> </tr>"
    
    
    rst.MoveNext
    
    Loop
    
    messaggiook = testo & messaggio & "</tbody> </table></font>"
    
    Call SendHTMLEmail(CStr(Me.email), "Pubblicazione" & CStr(numeroPobbl.) & " vendita del " & CStr(Me.dataVendita), messaggiook, "1", " ")
    End Sub
    
    Il problema è sul campo me!link, il valore viene troncato
  • Re: Link troncato [risolto]

    Non so se ti sto dando un suggerimento tecnicamente valido. La mia "immaginazione" mi porta a pensare che String abbia un limite di caratteri. Che succede se dichiari le variabili anzichè String, in Variant?
  • Re: Link troncato [risolto]

    OsvaldoLaviosa ha scritto:


    Non so se ti sto dando un suggerimento tecnicamente valido. La mia "immaginazione" mi porta a pensare che String abbia un limite di caratteri. Che succede se dichiari le variabili anzichè String, in Variant?
    Mah... non prenderei in considerazione questa affermazione che tecnicamente direi non ha senso.
    La guida in linea dice:
    
    String data type
    There are two kinds of strings: variable-length and fixed-length strings.
        A variable-length string can contain up to approximately 2 billion (2^31) characters.
        A fixed-length string can contain 1 to approximately 64 K (2^16) characters.
    Mi pare abbia sufficientemente posto in un Type String.

    Il Variant non è che può contenere più dati, il Variant è solo un Type flessibile, ma che poi al momento del Casting, assume un Type specifico e di questo ne eredita i Limiti.
    Quindi hai detto veramente una cosa non ascoltabile.
  • Re: Link troncato [risolto]

    Non è che il Controllo Link è associato ad un Campo di tipo HyperLink...?
  • Re: Link troncato [risolto]

    Sì, è proprio un hyperlink. Potrebbe essere quello il problema?
  • Re: Link troncato [risolto]

    Secondo me si... se lo analizzi facendo un DEBUG.PRINT... ti accorgi che devi fare un'azione di STRIP del dato...!
    Io di solito non uso mai il Tipo Huperlink proprio perchè non utile, in quanto applica al contenuto la sintassi del Link... che poi come ti accorgi genera anomalie se non manipolato.
  • Re: Link troncato [risolto]

    cataland ha scritto:


    Sì, è proprio un hyperlink. Potrebbe essere quello il problema?
    Come evidenziato da @Alex i campi hyperlink mostrano una cosa ma in realtà ne contengono un'altra, più complessa (indovina chi me l'ha detto la prima volta? L'è sempar lü)
    Introduction to Hyperlink fields di Allen Browne:
    Una volta individuato il vero contenuto si dovrebbe scoprire anche dove sta il problema dell'interruzione inaspettata.
  • Re: Link troncato [risolto]

    Grazie ragazzi, super! In pratica, convertendo il formato del campo da "collegamento ipertestuale" a "testo lungo", ho scoperto che sulla stringa veniva inserito un "#" sia all'inizio che alla fine della stringa. VBA, in quel caso, vedeva il testo troncato.

    Alla prossima
Devi accedere o registrarti per scrivere nel forum
9 risposte