Risultati da 1 a 14 di 14

Discussione: Codice non funzionante dopo il passaggio da "Windows" a "Mac"...



  1. #1
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0

    Codice non funzionante dopo il passaggio da "Windows" a "Mac"...

    Buongiorno a tutti, ho urgente necessita di aiuto.
    Sono migrato da un pc windows ad un mac, purtroppo alcune funzionalità del vba non vanno su office 2016 per mac.
    Nel dettaglio il controllo dei nomi nei giorni della settimana non funziona e non mi fa assegnare la macro ai pulsanti "Lunedì" "martedì" "mercoledì" etc. mentre le altre macro funzionano bene
    Allego il file
    https://www.dropbox.com/s/304k47q0x0...ROVA.xlsm?dl=0

    vi prego aiutatemi perche non posso lavorare. Grazie
    Ultima modifica fatta da:cromagno; 10/03/16 alle 12:20 Motivo: Modifica del titolo originale: "problema urgente con macro excel 2016 su Mac"

  2. #2
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Ho provato a modificare la macro seguente

    Codice: 
    Sub VERIFICA_ASSENZE(ByVal nCol As Integer, ByVal nCol2 As Integer)
    Dim rNominativi As Range
    Dim rTabella As Range
    Dim cl As Range
    Dim nRiga AsInteger
    With Foglio1 'FOGLIO DOVE TIENI LA LISTA DEI NOMINATIVI
    Set rNominativi = .Range("A8:A" & .Range("A" & Rows.Count).End(xlUp).Row)
    EndWith
    
    
    With Foglio2 'FOGLIO DOVE INSERISCI I NOMI NEI TURNI
    Set rTabella = .Range("B5:B150").Offset(0, nCol2).Resize(.Range("B5:B150").Rows.Count, 2)
    nRiga = 1
    rNominativi.Offset(0, nCol).ClearContents
    Application.EnableEvents = False
    For Each cl In rNominativi
    If cl.Offset(0, 8).Value = False Then
    If Application.WorksheetFunction.CountIf(rTabella, cl.Value) = 0 Then
    rNominativi.Offset(0, nCol).Cells(nRiga, 1).Value = cl.Value
    nRiga = nRiga + 1
    End If
    End If
    Next cl
    Application.EnableEvents = True
    EndWith
    Set rNominativi = Nothing
    Set rTabella = Nothing
    EndSub
    
    
    Sub cicla_nomi_MODULO()
    Dim rNomi As Range
    Dim cl As Range
    Dim bSpunta AsBoolean
    Set rNomi = Foglio1.Range("A8:A150")
    For Each cl In rNomi
    If cl.Offset(0, 8).Value = True Then
    MsgBox cl.Value
    bSpunta = True
    EndIf
    Next cl
    If Not bSpunta Then
    MsgBox "Nessun nome selezionato "
    EndIf
    Set rNomi = Nothing
    EndSub
    in questa riga Codice:
    Codice: 
    Sub VERIFICA_ASSENZE(ByVal nCol As Integer, ByVal nCol2 As Integer)
    in questo modo Codice:
    Codice: 
    Sub VERIFICA_ASSENZE()

    Ultima modifica fatta da:cromagno; 10/03/16 alle 13:28 Motivo: Inserito codice tra i tag CODE...

  3. #3

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4020
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Ciao joondeep,

    in futuro (come da regolamento) ricordati di scrivere un titolo che riassuma il problema esposto nella discussione, evitando parole come "help","urgente", etc...

    Regola nr.5 "il titolo"
    Per ottenere una risposta rapida assicurarti che il titolo sia il più chiaro possibile e che corrisponda al problema, usa termini appropriati che saranno usati come meta tag per una eventuale ricerca su Google.
    Evita di scrivere frasi inutili come “Aiuto” “Urgente ” “Non ci capisco niente” e "sono bloccato"
    perché potrebbero rivelarsi non appropriate e di conseguenza le tue discussioni potrebbero essere non lette.
    Ti consiglio di scrivere titoli che vanno dritto al problema esempio: "come faccio ad analizzare dati....." "come faccio ad estrarre records....." "come faccio a calcolare......." "come creare una TPivot......"
    I titoli ed i testi devono essere scritti in italiano corretto, sia grammaticamente che ortograficamente; postare frasi con errori evidenti è sempre una forma di NON rispetto per chi legge.
    P.S.
    La stessa discussione nella sezione "Domande su Excel in generale" è stata eliminata.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  4. #4
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao joondeep,

    in futuro (come da regolamento) ricordati di scrivere un titolo che riassuma il problema esposto nella discussione, evitando parole come "help","urgente", etc...



    P.S.
    La stessa discussione nella sezione "Domande su Excel in generale" è stata eliminata.
    Scusami hai ragione, sono disperato e devo portare avanti un sacco di lavoro. come faccio

  5. #5

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4020
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Ciao,
    non posso essere certo di quello che dico in quanto non ho il "Mac"...
    comunque, guardando il file allegato ho notato che nel modulo di classe del "Foglio 2" (che in realtà è il Foglio 1) ci sono i codici per i vari pulsanti ActiveX. Da quel che ho capito da alcuni post di ges (un saluto), nella versione per Mac gli ActiveX non sono disponibili quindi si dovrebbero utilizzare solo dei "pulsanti - controlli modulo" e di conseguenza scrivere ogni codice in dei moduli standard per poterli assegnare ai pulsanti (lunedì, martedì,etc...).

    Adesso non riesco a fare delle prove ma probabilmente "l'inghippo" è quello...

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  6. #6
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao,
    non posso essere certo di quello che dico in quanto non ho il "Mac"...
    comunque, guardando il file allegato ho notato che nel modulo di classe del "Foglio 2" (che in realtà è il Foglio 1) ci sono i codici per i vari pulsanti ActiveX. Da quel che ho capito da alcuni post di ges (un saluto), nella versione per Mac gli ActiveX non sono disponibili quindi si dovrebbero utilizzare solo dei "pulsanti - controlli modulo" e di conseguenza scrivere ogni codice in dei moduli standard per poterli assegnare ai pulsanti (lunedì, martedì,etc...).

    Adesso non riesco a fare delle prove ma probabilmente "l'inghippo" è quello...
    Grazie, anche io ho pensato così, e che non saprei come scriverli. mi hanno aiutato a fare tutto altri utenti

  7. #7

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7149
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2064
    Likes dati
    1300
    Ciao joondeep,
    io uso il Mac da ormai più di 5 anni e confermo gli Activex non funzionano.
    Inoltre, se vuoi usare le macro ti consiglio Office 2011, con Office 2016 la Apple ha abbandonato lo sviluppo del vba.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  8. #8
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Citazione Originariamente Scritto da ges Visualizza Messaggio
    Ciao joondeep,
    io uso il Mac da ormai più di 5 anni e confermo gli Activex non funzionano.
    Inoltre, se vuoi usare le macro ti consiglio Office 2011, con Office 2016 la Apple ha abbandonato lo sviluppo del vba.
    ho installato 2011. Potresti aiutarmi a convertire l'istruzione di modo da utilizzarla nel file che ho postato? Io non so come fare

  9. #9

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4020
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Ciao,
    sto guardando il file che hai allegato, ma sinceramente non capisco quale sia lo scopo....

    Inoltre, per non creare confusione, nomina i due fogli con dei nomi ben chiari (attualmente il "Foglio 1" si chiama "Foglio 2" e viceversa) e cerca di mettere qualche dato nella lista e/o tabella dei due fogli spiegando quello che dovrebbero fare i codici cliccando sui pulsanti (Lunedi,Mertedi,etc...).

    Per adesso l'unica cosa chiara è il nome della macro "VERIFICA_ASSENZE".

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  10. #10
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Ciao, lo scopo é quello di analizzare se tutti i nomi ( list personale) del foglio 1 (foglio2 ) sono inseriti nelle due colonne assegnate al foglio 2 (foglio 1).
    Praticamente compilo il primo foglio delle turnazioni e cliccando il giorno della settimana del secondo foglio mi risultano le persone che sono avanzate.
    Non so il motivo per il quale mi abbiano fatto impostare i fogli invertiti.
    Tra poco aggiungo qualche dato. Fammi sapere se sono stato chiaro. Grazie

  11. #11
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Allora, ho caricato le modifiche nel file. nella lista del foglio 2 (1) sotto la voce lista personale ci sono delle caselle di spunta, quelle persone sono temporaneamente escluse dal ciclo di controllo perche non assunte. quando si toglie la spunta vengono nuovamente incluse.

  12. #12

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4020
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Rimango ancora con qualche dubbio, comunque prova a dare un'occhiata...

    Del codice principale non ho cambiato praticamente nulla.
    I codici dei vari pulsanti li ho spostati in un modulo standard e ad esempio per quello del "Lunedi" è stato modificato da così:

    Codice: 
    Private Sub CmbLunedi_Click()
    Call VERIFICA_ASSENZE(1, 1) 'LUNEDI
    End Sub
    a così:

    Codice: 
    Sub Lunedi()
    Call VERIFICA_ASSENZE(1, 1) 'LUNEDI
    End Sub


    Ti riallego il file....

    P.S.
    Gli allegati inferiori a 200Kb li puoi allegare direttamente con lo strumento del forum "Gestione allegati".
    File Allegati File Allegati

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  13. #13
    L'avatar di joondeep
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Olbia
    Età
    43
    Messaggi
    10
    Versione Office
    Excel 2013
    Likes ricevuti
    0
    Likes dati
    0
    Grazie Cromagno, ho provato e riprovato, funziona benissimo, la modifica é compatibile anche su excel windows del collega.

    Grazie infinite.

  14. #14

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4020
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Citazione Originariamente Scritto da joondeep Visualizza Messaggio
    Grazie Cromagno, ho provato e riprovato, funziona benissimo, la modifica é compatibile anche su excel windows del collega.

    Grazie infinite.
    Meglio così :246:

    Se hai risolto il problema, segna questa discussione come "RISOLTO".
    Vai sul menù "Strumenti Discussione" (all'inizio del thread) e scegli la voce ""Segna questo thread come risolto...".

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

Discussioni Simili

  1. [Risolto] Ordinare con la funzione "piccolo"..ma "portandosi dietro" anche altri dati affiancati
    Di mauri73 nel forum Domande su Excel in generale
    Risposte: 13
    Ultimo Messaggio: 05/02/17, 14:57
  2. [Risolto] Come leggere la seguente formula =SE.ERRORE(INDIRETTO("'"&A1&"'!K1";1);""))
    Di sitolofi nel forum Domande su Excel in generale
    Risposte: 5
    Ultimo Messaggio: 20/12/16, 14:54
  3. >Come estrappolare la somma "automatica" di un DB con funzione "FILTRO"<
    Di tk71 nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 11/06/16, 11:44
  4. problema con formula se con "maggiore" e "minore" > e <
    Di fireman80 nel forum Domande su Excel in generale
    Risposte: 3
    Ultimo Messaggio: 09/05/16, 21:36
  5. Collegamento "foglio elenco" e "fogli singoli"
    Di Maurizio76 nel forum Domande su Excel in generale
    Risposte: 7
    Ultimo Messaggio: 23/11/15, 10:14

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •