Ciao Alexps81
Grazie per il prezioso consiglio.
Ora il sort sul campo id funziona a meraviglia.
Mi scuso per non averti dato nessun responso alle tue mail, ma sono in questi giorni un pò, forse un pò tanto, influenzato; eraano 10 anni e oltre che non beccavo un'influenza e quest'anno mi ha beccato.
Relativamente al problema dell'icona continua a dare
E' la prima volta che mi da problemi a caricvare un'immagine dal pc.
Il messaggio è comunque questo: "errore di runtime '7' -- Memoria esaurita"
With ImageList1
.ImageWidth = 16
.ImageHeight = 16
.ListImages.Clear
'INDICARE IL PERCORSO DELLE ICONE, ASSOCIANDO AD OGNI ICONA UNA KEY _
PER ESEMPIO LA KEY "I1" RAPPRESENTA LA "MAIL SPEDITA" _
LA KEY "I2" RAPPRESENTA LA "SPUNTA VERDE" _
ECC...CONTINUARE PER QUANTE ICONE SI DESIDERA ASSOCIARE PER OGNI CASO
.ListImages.Add , "I1", LoadPicture(ActiveWorkbook.Path & "\file_ico\email.ico") < -------- qui da errore
.ListImages.Add , "I2", LoadPicture(ActiveWorkbook.Path & "\file_ico\completed_50.ico")
.ListImages.Add , "I3", LoadPicture(ActiveWorkbook.Path & "\file_ico\spuntaverde.ico")
.ListImages.Add , "I4", LoadPicture(ActiveWorkbook.Path & "\file_ico\annulla_25x25.ico")
End With
il percorso delle icone è corretto.
Devo baipassare di caricare le iconw.
Io ho una macchina a 64bit. Leggo che nelle macchine a 64Bit non è più possibile caricare icone.
Volevo fare un'altra modificica alla listview e ci sto ragionando da ore.
Per una maggior leggibilità a video, volevo visualizzare un colore di background alternato nelle varie righe, ma vedo che nelle proprietà del singolo compo della riga "ListSubItems(6)." è attivo solo il .foreColor e non il .backColor e quindi non so come risolvere il problema della colorazione di sfondo delle righe con colori alternati. Sto cercaando in internet da ore, ma non trovo risposte.
Comunque il controllo ListView funziona davvero bene e di questo ti devo essere estremamente grato.
Scusami se mi dilungo, ma volevo chiederti un consiglio ssu un artificio che vedo hai fatto ad arte per gestire il ssort sul campo data.
With Me.ListView1
.AllowColumnReorder = True
.FullRowSelect = True
.Gridlines = True
.ListItems.Clear
.ColumnHeaders.Clear
.View = lvwReport
' Set .SmallIcons = ImageList1
.LabelEdit = lvwManual
.ColumnHeaders.Add Text:="ID", Width:=30
.ColumnHeaders.Add Text:="Utente", Width:=150
.ColumnHeaders.Add Text:="Intervento", Width:=250
.ColumnHeaders.Add Text:="DataSort", Width:=0 '<--ordinare per data
.ColumnHeaders.Add Text:="Data Inizio", Width:=50
.ColumnHeaders.Add Text:="Stato", Width:=0
.ColumnHeaders.Add Text:="S t a t o", Width:=150
End With
itm.SubItems(1) = .Fields("utente").Value
itm.SubItems(2) = .Fields("intervento").Value
'=============== stratagemma per ordinare per DATA =============
itm.SubItems(3) = Format(.Fields("dataInizio").Value, "yyymmdd")
'===============================================================
itm.SubItems(4) = .Fields("dataInizio").Value
itm.SubItems(5) = .Fields("stato").Value
itm.SubItems(6) = .Fields("DescStato").Value
itm.ListSubItems(6).ForeColor = colore
itm.ListSubItems(6).Bold = True
itm.ListSubItems(6).TooltipText = "Stato Pratica"
usi un campo "Civetta" in cui la fataa è nel formaato "yyymmdd"
Intanto perchè "yyymmdd" e non "yyyymmdd" ?
Seconda cosa. a video il campo "civetta" non lo visualizzo. E' possibile se seleziono il campo "data inizio" forzarlo che ordini sul campo "DataSort" ?la decisione di non editare il campo "DataSort" è dovuta al fatto di non creare disagio all'operatore, dato che conoco i miei polli.
Se si potesse ordinare sul campo DataSort sarebbe tutto a posto.
Grazie
Moreno