Condividi:        

Controlli aggiuntivi

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Controlli aggiuntivi

Postdi alfrimpa » 09/01/16 17:25

Ciao a tutti.

Sto realizzando, per conto di un amico, un'applicazione in Excel per l'invio degli ordinativi da parte dei suoi clienti.

In tale applicazione è presente una userform con al suo interno un controllo "Listview" (anzichè della più canonica "Listbox").

Come saprete il controllo "Listview" non è presente tra quelli di default nella Casella degli Strumenti ma bisogna attivarlo fra quelli presenti nei "Controlli aggiuntivi".

Poichè tale applicazione verrà fornita ai clienti del mio amico, ritengo che la maggior parte di essi (se non tutti) non abbia la "Listview" disponibile e pertanto alla visualizzazione della form il codice andrà in debug perchè non trova la libreria della "Listview".

La mia domanda è questa: è possibile, attraverso codice VBA, verificare se la libreria in qustione sia disponibile e se non lo è attivarla senza che l'utente finale faccia nulla?

L'alternativa sarebbe quella di fornire le istruzioni per eseguire tale operazione manualmente ma non siamo per nulla sicuri che tutti gli utenti siano in grado, pur con le istruzioni, di farlo autonomamente.

Vi ringrazio in anticipo delle risposte/suggerimenti che vorrete darmi.
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Sponsor
 

Re: Controlli aggiuntivi

Postdi PcBase » 09/01/16 18:55

L'alternativa sarebbe quella di fornire le istruzioni per eseguire tale operazione manualmente ma non siamo per nulla sicuri che tutti gli utenti siano in grado, pur con le istruzioni, di farlo autonomamente.

Su quanti forum hai contemporaneamente inserito questo Post!
Puoi sicuramente recarti personalmente da tutti i clienti
Windows xp + Office 2003 Ita
Windows8 Office 2013
PcBase
Utente Senior
 
Post: 143
Iscritto il: 24/02/11 23:26

Re: Controlli aggiuntivi

Postdi alfrimpa » 09/01/16 19:05

In tanti anni che frequento i forum su Excel (ai quali ho contribuito in maniera del tutto disinteressata con un ammontare complessivo di quasi 4.000 risposte) questa è, credimi, la prima (e ripeto la prima) volta che ho fatto crossposting ma data la natura "particolare" della domanda (alquanto complessa) ho ritenuto poterla fare anche su altri siti.

In due anni, ossia da quando sono iscritto a Pc-Facile Forum, non ho visto mai (e dico mai) un utente che sia stato ripreso dai Moderatori per aver posto la stessa domanda contemporaneamente su più forum (credimi che ce ne sono tanti; perché non sei intervenuto anche in quei casi?).

Non ho capito il senso di questo tuo messaggio; se ho violato una norma del regolamento sarebbe dovuto intervenire un Moderatore (e non un utente qualunque) a farmi rilevare l'infrazione commessa.

Quanto alla tua ultima affermazione: "Puoi sicuramente recarti personalmente da tutti i clienti" come fai a dire questo?
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi PcBase » 09/01/16 19:15

Ciao afrimpa

In questo forum il cross post è tollerato :lol: :lol:

Quanto alla tua ultima affermazione: "Puoi sicuramente recarti personalmente da tutti i clienti" come fai a dire questo?


Ho utilizzato il controllo e ho sempre dovuto scaricare e installare il componente OCX
Fatto questo ho ancora dei seri problemi a salvare il programma con Office 2013 per poi utilizzarlo con Excel 2003
Il controllo perde le sue caratterristiche dirai a me non è mai capitato! In tal caso ti auguro buona fortuna.

Suggerimento personale evita di utilizzarlo inserisci un controllo listBox

Sicuramente qualche ESPERTO ti potrà suggerire una soluzione migliore
Windows xp + Office 2003 Ita
Windows8 Office 2013
PcBase
Utente Senior
 
Post: 143
Iscritto il: 24/02/11 23:26

Re: Controlli aggiuntivi

Postdi alfrimpa » 09/01/16 19:32

Ciao PcBase

Premetto che non sono un programmatore ma solo un appassionato che, da pensionato, si dedica appunto alla sua "passione".

Detto questo ti dico che ho usato la Listview perchè decisamente più versatile rispetto alla Listbox non avendo minimamente idea dei "problemi" da te paventati.

In Excel 2007 (versione da me utilizzata) il controllo è disponibile tra quelli aggiuntivi e non ho scaricato alcun .ocx

Aspetto eventuali ulteriori pareri e se i tuoi timori dovessero essere confermati vorrà dire che dovrò tornare alla Listbox (anche se dovrò rifare metà del lavoro)
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi Anthony47 » 10/01/16 17:11

Si, confermo che in questo forum non ci offendiamo se la stessa domanda che viene posta qui e' contemporaneamente pubblicata su altri forum; quello che chiediamo e' che l'utente dia seguito ai messaggi ricevuti.

Il Listview fa parte della libreria Windows Common Controls, MSCOMCTL.OCX, cioe' quella dei controlli di base; quindi la sua presenza in XL2003 dovrebbe essere sicura.
Quanto ai problemi di compatibilita' con le versioni non ho esperienza diretta (salvo quelle legate a infelici aggiornamenti Microsoft di inizio 2015, e salvo quelle certe legate all'eventuale migrazione a office 64 bit)

La libreria e' installata in queste posizioni:
C:\Windows\SysWow64\MSCOMCTL.OCX su sistemi con Windows a 64 bit
C:\Windows\system32\MSCOMCTL.OCX su sistemi con Windows a 32 bit
Quindi teoricamente si potrebbe controllare se essa esiste con una verifica fatta all'apertura del file; del tipo; ad esempio con un codice come questo:
Codice: Seleziona tutto
'Check quale versione di Win:
If Len(Environ("ProgramW6432")) > 0 Then
    syspath = "C:\Windows\SysWow64\"
Else
    syspath = "C:\Windows\system32\"
End If
'Check se MsComCtl e' presente:
If Dir(syspath & "MSCOMCTL.OCX") <> "MSCOMCTL.OCX" Then
    MsgBox ("Manca sul Pc il modulo MsComCtl.ocx; il codice non potra' essere eseguito")
    Exit Sub
End If

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Controlli aggiuntivi

Postdi alfrimpa » 11/01/16 11:58

Ciao Anthony e grazie del tuo intervento.

La mia domanda nasceva da una mia "ignoranza".

Ritenevo che per visualizzare una listview presente su una userform fosse necessario attivare il relativo controllo in Strumenti, Controlli aggiuntivi.

Ma così non è: ho infatti deselezionato tale controllo e la mia form si è aperta tranquillamente.

Mi sono reso conto che l'attivazione è necessaria solo se si vuole inserire il controllo nella casella degli strumenti (per futuri utilizzi) mentre per visualizzare correttamente la listview è solo necessario che il file MSCOMCTL.OCX sia presente in C:\Windows\system32\ e mi sembra di capire che da Excel 2003 tale file sia presente. Me lo confermi?

Non so se mi sono spiegato.

Ti ringrazio nuovamente.
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi Anthony47 » 11/01/16 23:24

Come hai scoperto, se inserisci un controllo in un progetto l'importante e' che la librera che contiene quel controllo sia presente sul pc che carica poi il file (deve essere anche "registrata", ma se e' presente ragionevolmente e' anche registrata).

Non so da quanto tempo la Common Controls vers 6.0 MSCOMCTL.OCX viene distribuita, potrebbero essere 12- 15 anni: era certamente assente ai tempi di Office 97, quando i Common Controls erano in vers 5.0 nella libreria COMCTL32.OCX; era invece certamente presente in Office XP, alias 2002.
Tutto questo per dire che non dovresti avere problemi di compatibilita' anche su versioni meno recenti.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Controlli aggiuntivi

Postdi alfrimpa » 12/01/16 12:53

Anthony grazie ancora del tuo ulteriore conforto.

Se posso un piccolo OT: ho inserito nella casella degli strumenti il controllo Acrobat PDF Reader (tranquillamente disponibile) ma quando lo vado a mettere su una userform Excel smette di funzionare e va in crash.

Ho provato molte volte ma fa sempre la stessa cosa; cosa potrebbe essere?
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi Anthony47 » 12/01/16 15:52

Ma io non credo che se qualcosa e' presente significa automaticamente che quella cosa sia compatibile col vba; in fondo Windows e' un sistema praticamente aperto.
Tu di quale controllo parli? Da chi e' stato emesso?
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Controlli aggiuntivi

Postdi alfrimpa » 12/01/16 16:20

Anthony è il primo controllo che risulta presenta nella casella controlli aggiuntivi che sul mio Excel è appunto Acrobat PDF Reader.

Io non ho scaricato né messo nulla.
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi alfrimpa » 12/01/16 17:06

Tra l'altro l'icona che simboleggia il controllo nella casella degli strumenti è il logo Acrobat.
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1201
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Controlli aggiuntivi

Postdi Anthony47 » 12/01/16 23:07

Sono sempre piu' convinto che si tratti di un componente Adobe per il suoi programmi...
Ho spuntato, tramite Menu /Strumenti /Riferimenti, tutte le librerie che richiamano Adobe Reader, e corrispondono alle seguenti informazioni:
Immagine
upload
(tasto dx, Visualizza immagine per visualizzare l'immagine completa)

"Appena avro' un po' di tempo" cerchero' (sul sito Adobe) a cosa corrispondono.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Controlli aggiuntivi":


Chi c’è in linea

Visitano il forum: Nessuno e 78 ospiti