Risultati da 1 a 27 di 27

Discussione: Formattazione condizionale con valute diverse



  1. #1
    L'avatar di Pierpaolo
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Udine
    Età
    50
    Messaggi
    49
    Versione Office
    2013
    Likes ricevuti
    1

    Formattazione condizionale con valute diverse

    Ciao a tutti!
    mi sono imbattuto in un problemino (forse banale) che non riesco a risolvere.
    Vorrei fare una formattazione condizionale che mi cambi il colore della cella in base alle diverse valute che uso nel computo dei costi; ad esempio: se inserisco i costi in dollari vorrei avere la cella di colore giallo e se invece inserisco i costi in EURO vorrei avere la cella in verde. Le celle con i costi hanno già il simbolo della valuta correspondente.
    Avete un'idea?
    Grazie in anticipo per l'aiuto
    Ciao
    Pierpaolo

  2. #2
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Ciao PierP
    Ma il segno del dolloro e dell'euro, lo inserisci tu manualmente oppure hai fatto una personalizzazione del formato del numero,in pratica se scrivo 10 excel scrive €10 automaticamente? perchè ci sono grosse differenze
    Ciao
    Ultima modifica fatta da:scossa; 13/03/16 alle 20:58

  3. #3
    L'avatar di Pierpaolo
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Udine
    Età
    50
    Messaggi
    49
    Versione Office
    2013
    Likes ricevuti
    1
    Caro Gerardo,
    si, ho fatto una formattazione del formato del numero quindi il simbolo NON lo inserisco io manualmente

  4. #4
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da Pierpaolo Visualizza Messaggio
    Caro Gerardo,
    si, ho fatto una formattazione del formato del numero quindi il simbolo NON lo inserisco io manualmente
    beh allora la tua domanda non'è affatto banale, perchè non cè niente che fa capire ad excel che quel numero è un dollaro o euro perchè purtroppo quella è solo una formattazione e quindi la FC non può fare niente, forse si può fare qualcosa con il VBA ma questa per me è tutta un'altra storia, in attesa che qualche esperto VBA si faccia sentire un saluto

  5. #5
    L'avatar di Pierpaolo
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Udine
    Età
    50
    Messaggi
    49
    Versione Office
    2013
    Likes ricevuti
    1
    Grazie Gerardo! Cercherò un altro modo per formattare le celle aventi diverse valute.
    Ciao

  6. #6
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da Pierpaolo Visualizza Messaggio
    Grazie Gerardo! Cercherò un altro modo per formattare le celle aventi diverse valute.
    Ciao
    Non disperare magari qualcuno esperto di VBA tirerà fuori il coniglio dal cilindro:269:Ciao
    Ultima modifica fatta da:Gerardo Zuccalà; 11/03/16 alle 22:22 Motivo: errore ortografico

  7. #7
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da Pierpaolo Visualizza Messaggio
    Grazie Gerardo! Cercherò un altro modo per formattare le celle aventi diverse valute.
    Ciao
    Ciao Pierpaolo
    Stavo pensando ad una soluzione senza i codici VBA, con la sola aggiunta di un una cella che determina il tipo di valuta, questa cella di aiuto non disturba a nessuno pero ti permette di dare il colore alle celle e la valuta in automatico... cosa di non poco conto

    Devi crearti un menu a tendina con tutte le valute imaginabili
    poi selezioni l'intervallo che dovrai formattare e metterai una regola (formula) a seconda dei cambiamenti del menu a tendina
    ti allego il file e e dimmi se potrebbe andarti bene se la risposta è si ti spiego come ho fatto cosi che lo puoi adattare alla tua realta
    fammi sapere
    File Allegati File Allegati

  8. #8

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Provo col vba.

    Codice: 
    Sub ColoraValuta()
        Dim area1 As Range, area2 As Range
        Set area1 = Range("A1, B2, C7, D4")
        Set area2 = Range("A4, B6, C3, D6")
        area1.NumberFormat = "[$€-410] #,##0.00"
        area2.NumberFormat = "[$$-409] #,##0.00"
        For Each cella1 In area1
            If cella1.NumberFormat = "[$€-410] #,##0.00" Then
                cella1.Interior.ColorIndex = 6
            End If
        Next
        For Each cella2 In area2
            If cella2.NumberFormat = "[$$-409] #,##0.00" Then
                cella2.Interior.ColorIndex = 3
            End If
        Next
        Set area1 = Nothing
        Set area2 = Nothing
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  9. I seguenti 2 utenti hanno dato un "Like" a ges per questo post:


  10. #9
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Grande ges!! sei una enciclopedia aperta!! :262:

  11. #10

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Troppo buono Gerardo, sto solo intensificando gli "allenamenti" col vba.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  12. #11
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126
    Citazione Originariamente Scritto da ges Visualizza Messaggio
    Troppo buono Gerardo, sto solo intensificando gli "allenamenti" col vba.
    Da quasi un anno che ti conosco hai fatto passi da gigante e non oso pensare cosa accadrà nei prossimi anni.....:50:
    Io purtroppo ho completamente abbandonato, ero partito bene ma poi per una serie di cose ho lasciato tutto, però credo che ci sia sempre tempo per riprenderlo.....

  13. #12

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Citazione Originariamente Scritto da Gerardo Zuccalà Visualizza Messaggio
    Da quasi un anno che ti conosco hai fatto passi da gigante e non oso pensare cosa accadrà nei prossimi anni.....:50:
    Io purtroppo ho completamente abbandonato, ero partito bene ma poi per una serie di cose ho lasciato tutto, però credo che ci sia sempre tempo per riprenderlo.....
    Sicuramente, sicuramente ... in ogni momento sei sempre in tempo per riprenderlo! :286:
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  14. #13

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Perfeziono la macro che colora le celle in base alle valute (Euro-Dollaro) in qualunque parte del foglio sono posizionate.

    Codice: 
    Option Explicit
    Sub ColoraValuta()
        Dim area As Range, cella As Range
        Set area = ActiveSheet.UsedRange
        For Each cella In area
            If cella.NumberFormat = _
            "_-[$€-410] * #,##0.00_-;-[$€-410] * #,##0.00_-;_-[$€-410] * ""-""??_-;_-@_-" Then
                cella.Interior.ColorIndex = 6
            ElseIf cella.NumberFormat = _
            "_-[$$-409]* #,##0.00_ ;_-[$$-409]* -#,##0.00 ;_-[$$-409]* ""-""??_ ;_-@_ " Then
                cella.Interior.ColorIndex = 3
            End If
        Next
        Set area = Nothing
        End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  15. I seguenti utenti hanno dato un "Like"


  16. #14
    L'avatar di rollis13
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Cordenons
    Messaggi
    817
    Versione Office
    2016 64bit
    Likes ricevuti
    148
    Likes dati
    53
    Se vi sono celle vuote ma già formattate ci potrebbe star bene un
    Codice: 
            If Not cella = "" Then
    all'inizio del For/Next.

  17. #15

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Ciao Rollis, giusta la tua osservazione.
    In alternativa si potrebbe cambiare questa riga

    Codice: 
    If cella.NumberFormat = _
            "_-[$€-410] * #,##0.00_-;-[$€-410] * #,##0.00_-;_-[$€-410] * ""-""??_-;_-@_-" And cella > 0 Then
    Considerando i numeri negativi, il codice completo sarebbe così:
    Codice: 
    Option Explicit
    Sub ColoraValuta()
        Dim area As Range, cella As Range
        Set area = ActiveSheet.UsedRange
        For Each cella In area
            If cella.NumberFormat = _
            "_-[$€-410] * #,##0.00_-;-[$€-410] * #,##0.00_-;_-[$€-410] * ""-""??_-;_-@_-" And cella <>"" Then
                cella.Interior.ColorIndex = 6
          ElseIf cella.NumberFormat = _
            "_-[$$-409]* #,##0.00_ ;_-[$$-409]* -#,##0.00 ;_-[$$-409]* ""-""??_ ;_-@_ " And cella <>"" Then
                cella.Interior.ColorIndex = 3
            End If
        Next
        Set area = Nothing
        End Sub
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  18. I seguenti 3 utenti hanno dato un "Like" a ges per questo post:


  19. #16

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    Citazione Originariamente Scritto da ges Visualizza Messaggio
    Provo col vba.
    Ciao a tutti,

    scusa ges, ma se imposti la formattazione tu:
    Codice: 
        area1.NumberFormat = "[$€-410] #,##0.00"
        area2.NumberFormat = "[$$-409] #,##0.00"
    che senso ha poi testare le singole celle:
    Codice: 
     If cella1.NumberFormat = "[$€-410] #,##0.00" Then
    ??

    Si può semplificare in:
    Codice: 
    Sub ColoraValuta()
        Dim area1 As Range, area2 As Range
        
        Set area1 = Range("A1, B2, C7, D4")
        Set area2 = Range("A4, B6, C3, D6")
        
        area1.NumberFormat = "[$€-410] #,##0.00"
        area1.Interior.ColorIndex = 6
        
        area2.NumberFormat = "[$$-409] #,##0.00"
        area2.Interior.ColorIndex = 3
        
        Set area1 = Nothing
        Set area2 = Nothing
    End Sub
    Edit: non avevo visto che c'erano post successivi.
    Ultima modifica fatta da:scossa; 13/03/16 alle 22:14
    Bye!
    scossa
    scossa's web site
    ___
    Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)

  20. #17

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7158
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1300
    Ciao scossa, infatti quella fatta prima era solo una prova per range definiti, nell'ultimo post ho perfezionato il codice.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  21. #18
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    73
    Messaggi
    3222
    Versione Office
    Excel2010
    Likes ricevuti
    627
    Likes dati
    155
    Buon giorno a tutti
    vorrei proporre una mia idea. Se la formattazione è fatta dall'utente impostando la cella con "Valuta" ed il segno relativo ed ammettendo che (per prova) le celle interessate siano B1:B5, la seguente macro, senza scomodare la Formattazione Condizionale ed implicazioni conseguenti, non potrebbe andare?
    Codice: 
    Sub Valute()
    dim testo as string
    For i = 1 To 5
        testo = Cells(i, 2).Text
        If Left(testo, 1) = "€" Then Cells(i, 2).Interior.ColorIndex = 3
        If Left(testo, 1) = "£" Then Cells(i, 2).Interior.ColorIndex = 6
        If Left(testo, 1) = "$" Then Cells(i, 2).Interior.ColorIndex = 4
    Next
    End Sub
    Ovviamente viene colorata anche una eventuale cella SENZA la formattazione a VALUTA ma in cui si sia digitato il segno della valuta come primo carattere. Aspetto le critiche :167:

    Ciao,
    Mario

  22. #19

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    Aspetto le critiche
    Potrei mai lasciarti nel limbo dell'attesa? :-)

    Ovviamente viene colorata anche una eventuale cella SENZA la formattazione a VALUTA ma in cui si sia digitato il segno della valuta come primo carattere
    Mi sembra una condizione critica, preferisco la soluzione di ges, anche se la renderei più "tollerante" (troppo restrittivo indicare tutto l'esatto formato):
    Codice: 
    Sub ColoraValuta2()
      Dim area As Range, cella As Range
      
      Set area = ActiveSheet.UsedRange
      For Each cella In area
          If InStr(1, cella.NumberFormat, "[$€") > 0 And cella <> "" Then
              cella.Interior.ColorIndex = 6
          ElseIf InStr(1, cella.NumberFormat, "[$$") > 0 And cella <> "" Then
              cella.Interior.ColorIndex = 3
          End If
      Next
      Set area = Nothing
        
    End Sub
    Bye!
    scossa
    scossa's web site
    ___
    Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)

  23. #20
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3342
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da scossa Visualizza Messaggio
    Potrei mai lasciarti nel limbo dell'attesa? :-)



    Mi sembra una condizione critica, preferisco la soluzione di ges, anche se la renderei più "tollerante" (troppo restrittivo indicare tutto l'esatto formato):
    Codice: 
    Sub ColoraValuta2()
      Dim area As Range, cella As Range
      
      Set area = ActiveSheet.UsedRange
      For Each cella In area
          If InStr(1, cella.NumberFormat, "[$€") > 0 And cella <> "" Then
              cella.Interior.ColorIndex = 6
          ElseIf InStr(1, cella.NumberFormat, "[$$") > 0 And cella <> "" Then
              cella.Interior.ColorIndex = 3
          End If
      Next
      Set area = Nothing
        
    End Sub
    Perchè mi funziona col $ e con la £ e non con l' € ?? :62:
    File Allegati File Allegati

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  24. #21

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    Perché € è il formato di default, che nel formato cella corrisponde a "$ ...... ", quindi due possibili correzioni:

    Codice: 
    ElseIf InStr(1, cella.NumberFormat, "[$€") + InStr(1, cella.NumberFormat, "$ ") > 0 And cella <> "" Then
    oppure
    Codice: 
    ElseIf InStr(1, cella.NumberFormat, "[$€") + InStr(1, cella.NumberFormatlocal, "€ ") > 0 And cella <> "" Then

  25. #22
    L'avatar di Baloon_50
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Milano - Italy
    Età
    67
    Messaggi
    3342
    Versione Office
    2013 PC
    Likes ricevuti
    483
    Likes dati
    49
    Citazione Originariamente Scritto da scossa Visualizza Messaggio
    Perché € è il formato di default, che nel formato cella corrisponde a "$ ...... ", quindi due possibili correzioni:

    Codice: 
    ElseIf InStr(1, cella.NumberFormat, "[$€") + InStr(1, cella.NumberFormat, "$ ") > 0 And cella <> "" Then
    oppure
    Codice: 
    ElseIf InStr(1, cella.NumberFormat, "[$€") + InStr(1, cella.NumberFormatlocal, "€ ") > 0 And cella <> "" Then
    Come al solito c'è sempre un perchè :271:

    Grazie Scossa :261:

    A volte basta usare parole inutili come “grazie” e “per favore” per rendere la vita più bella.
    (ELKonigsburg)
    Dice il saggio : "se vuoi essere aiutato devi metter l'allegato"
    (Nick Carter - Ten)

  26. #23
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    73
    Messaggi
    3222
    Versione Office
    Excel2010
    Likes ricevuti
    627
    Likes dati
    155
    Scusa Marco è la prima volta che dissento.
    La mia macro funziona per qualsiasi simbolo di valuta venga introdotto e valutato (scusa per il bisticcio di parole). Senza alcuna correzione Baloon non avrebbe riscontrato la problematica citata.
    Perchè dici
    Mi sembra una condizione critica
    . Non capisco dove sta la criticità.

    Ciao Mario

  27. #24

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    La criticità è in quello che hai precisato tu e che avevo quotato: "Ovviamente viene colorata anche una eventuale cella SENZA la formattazione a VALUTA ma in cui si sia digitato il segno della valuta come primo carattere".

  28. #25
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    73
    Messaggi
    3222
    Versione Office
    Excel2010
    Likes ricevuti
    627
    Likes dati
    155
    E' vero! E' un caso limite ma potrebbe capitare (anche se mi viene difficile immaginare l'inizio di una cella con un simbolo di valuta che non debba essere formattata).

    Come sempre, hai ragione tu.:274:
    Certo, però, che il giorno in cui dovessi avere ragione io mi metto d'accordo con ninai e albatros e la "Trinacria" metterà in campo i fuochi d'artificio.:167:

    Ciao, Mario

  29. I seguenti utenti hanno dato un "Like"


  30. #26

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    E' un caso limite ma potrebbe capitare (anche se mi viene difficile immaginare l'inizio di una cella con un simbolo di valuta che non debba essere formattata
    € o $, questo il dilemma: se sia più nobile soffrire con la valuta locale, o prendere il malloppo e convertirlo nella valuta del nuovo mondo .... :288:

  31. #27

    L'avatar di scossa
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Verona Provincia
    Età
    57
    Messaggi
    1017
    Versione Office
    .
    Likes ricevuti
    366
    Likes dati
    0
    Battute a parte, anziché il formattare col simbolo all'inizio (p.e.: "€ #.###") qualcuno potrebbe formattare col simbolo alla fine (p.e. "#.### €") e il tuo codice non lo rileverebbe.

Discussioni Simili

  1. Formattazione Condizionale
    Di RUGANT54 nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 30/12/16, 16:04
  2. [Risolto] formattazione condizionale
    Di para siempre nel forum Domande su Excel in generale
    Risposte: 10
    Ultimo Messaggio: 03/12/16, 19:01
  3. Formattazione condizionale confrontando dati in colonne diverse
    Di G.Bove nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 28/05/16, 11:54
  4. formattazione condizionale
    Di nessi nel forum Domande su Excel in generale
    Risposte: 19
    Ultimo Messaggio: 08/04/16, 19:53
  5. formattazione condizionale
    Di Vittorio nel forum Domande su Excel in generale
    Risposte: 10
    Ultimo Messaggio: 02/04/16, 20:51

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
  •