Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
Analizziamo nel dettaglio DJI RS 5, l'ultimo arrivato della famiglia Ronin progettato per videomaker solisti e piccoli studi. Tra tracciamento intelligente migliorato e ricarica ultra rapida, scopriamo come questo gimbal eleva la qualità delle produzioni.
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 31-07-2008, 17:52   #1
Salvatopo
Senior Member
 
L'Avatar di Salvatopo
 
Iscritto dal: Mar 2002
Città: Bari
Messaggi: 3084
[VBA] Domanda da niubbo su macro

Ciao a tutti.
Premetto che è la prima volta in assoluto che utilizzo il VBA
Detto questo: mi trovavo nella necessità di dover, in automatico, eliminare le etichette a valore 0 (zero) in una serie di fogli di excel con dei grafici a torta e mi sono imbattuto, sul sito microsoft, in questa macro:
Codice:
Sub Auto_Open()
      ' Change the "Sheet1" to the sheet with your data on it.
      Worksheets("Sheet1").OnCalculate = "ClearLabels"
   End Sub

   Sub Auto_Close()
      Worksheets("Sheet1").OnCalculate = ""
   End Sub

   Sub ClearLabels()
      ' Change the "Sheet1" to the Sheet with your chart on it and
      ' "Chart 1" to the name of your chart.
      Worksheets("Sheet1").ChartObjects("Chart 1").Chart.ApplyDataLabels _
         Type:=xlShowPercent
      ' Note: In preceding statement, use Type:=xlShowPercent for charts
      ' with just percents, if there are none. Use
      ' Type:=xlShowLabelAndPercent instead for charts with both, Labels
      ' and Percents, if there are none.
      For Each X In Worksheets("Sheet1").ChartObjects("Chart 1"). _
         Chart.SeriesCollection(1).Points
         ' Use the following two lines for charts with just percents.
         If InStr(X.DataLabel.Text, "0%") > 0 _
            And Len(X.DataLabel.Text) = 2 Then
            ' Use the following line instead for charts with labels and
            ' percents.
            ' If InStr(x.DataLabel.Text, Chr(10) & "0%") > 0 Then
            X.DataLabel.Delete
         End If
      Next
   End Sub
Ora: ogni file contiene 3 fogli, chiamati rispettivamente "Torte IF", "Torte IG" e "Torte IDM" i quali a loro volta contengono ognuno 6 grafici, chiamati "grafico 1", "grafico 2", ecc...
Il mio problema è: come faccio a
1) Modificare la macro affinchè processi i 3 fogli e i 18 grafici in automatico
2) Processare tutti i 47 files che contengono le stesse torte, ma con dati diversi?

P.S.
Ovviamente se sostituisco a mano "Sheet 1" con, ad es. "Torte IG" e "Chart 1" con "Grafico 1" tutto funziona, ma il problema è, appunto, farlo fare in automatico, magari mettendo un tastino sulla barra di excel.
__________________
AMD Ryzen7 1700 - MSI X370 Gaming Pro Carbon - Corsair Vengeance RGB - MSI GTX-1080 Armor OC - LG 27UD68 - Corsair RM650i - Sharkoon M25-W - Samsung 850 evo - Western Digital Caviar Green 2TB
Salvatopo è offline   Rispondi citando il messaggio o parte di esso
Old 31-07-2008, 23:25   #2
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Prova un codice di questo genere:

Codice:
Sub grafici()
For Each foglio In Application.Worksheets
foglio.Activate
    For Each grafico In ActiveSheet.ChartObjects
        ActiveSheet.ChartObjects(grafico.Name).Activate
        ActiveChart.SeriesCollection(1).DataLabels.Select
        Selection.NumberFormat = " 0.0%;;"
    Next grafico
Next foglio
End Sub
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 01-08-2008, 09:19   #3
Salvatopo
Senior Member
 
L'Avatar di Salvatopo
 
Iscritto dal: Mar 2002
Città: Bari
Messaggi: 3084
Quote:
Originariamente inviato da john_revelator Guarda i messaggi
Prova un codice di questo genere:

Codice:
Sub grafici()
For Each foglio In Application.Worksheets
foglio.Activate
    For Each grafico In ActiveSheet.ChartObjects
        ActiveSheet.ChartObjects(grafico.Name).Activate
        ActiveChart.SeriesCollection(1).DataLabels.Select
        Selection.NumberFormat = " 0.0%;;"
    Next grafico
Next foglio
End Sub
Grazie: l'ho fatto... cancella gli zeri, ma mi trasforma i dati in percentuali assurde.

Credo che l'errore sia in
Codice:
Selection.NumberFormat = " 0.0%;;"
__________________
AMD Ryzen7 1700 - MSI X370 Gaming Pro Carbon - Corsair Vengeance RGB - MSI GTX-1080 Armor OC - LG 27UD68 - Corsair RM650i - Sharkoon M25-W - Samsung 850 evo - Western Digital Caviar Green 2TB
Salvatopo è offline   Rispondi citando il messaggio o parte di esso
Old 01-08-2008, 09:28   #4
Salvatopo
Senior Member
 
L'Avatar di Salvatopo
 
Iscritto dal: Mar 2002
Città: Bari
Messaggi: 3084
Dimenticavo, i valori delle etichette sono dei valori adimensionali, non percentuali.
__________________
AMD Ryzen7 1700 - MSI X370 Gaming Pro Carbon - Corsair Vengeance RGB - MSI GTX-1080 Armor OC - LG 27UD68 - Corsair RM650i - Sharkoon M25-W - Samsung 850 evo - Western Digital Caviar Green 2TB
Salvatopo è offline   Rispondi citando il messaggio o parte di esso
Old 01-08-2008, 10:16   #5
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Se i valori sono assoluti e non percentuali sostituisci come hai giustamente intuito

Selection.NumberFormat = " 0.0%;;"

con

Selection.NumberFormat = "*??"

john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 25-08-2008, 13:48   #6
Salvatopo
Senior Member
 
L'Avatar di Salvatopo
 
Iscritto dal: Mar 2002
Città: Bari
Messaggi: 3084
Ora provo.
__________________
AMD Ryzen7 1700 - MSI X370 Gaming Pro Carbon - Corsair Vengeance RGB - MSI GTX-1080 Armor OC - LG 27UD68 - Corsair RM650i - Sharkoon M25-W - Samsung 850 evo - Western Digital Caviar Green 2TB
Salvatopo è offline   Rispondi citando il messaggio o parte di esso
Old 25-08-2008, 13:50   #7
Salvatopo
Senior Member
 
L'Avatar di Salvatopo
 
Iscritto dal: Mar 2002
Città: Bari
Messaggi: 3084
Non va.
Perchè, penso, ho spesso valori tipo 0.65 o 0.04 e simili...
__________________
AMD Ryzen7 1700 - MSI X370 Gaming Pro Carbon - Corsair Vengeance RGB - MSI GTX-1080 Armor OC - LG 27UD68 - Corsair RM650i - Sharkoon M25-W - Samsung 850 evo - Western Digital Caviar Green 2TB
Salvatopo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
SpaceX vuole portare nello Spazio 1 mili...
Realme 16: il nuovo mid-range che si isp...
DAZN lancia il piano Full Mobile a 19,99...
Samsung Galaxy S26, ormai è tutto...
Smartphone sempre più cari: super...
L'ultima puntata di Falsissimo rimossa d...
NASA Perseverance ha utilizzato percorsi...
Blue Origin sospende per almeno due anni...
Stampanti, Los Angeles verso il divieto ...
Roscosmos Amur: il razzo spaziale riutil...
Robot aspirapolvere per tutte le tasche:...
Accedere alle mail di un lavoratore lice...
Amazon Haul scatenato: migliaia di prodo...
Amazon Seconda Mano rilancia: sconto ext...
Super prezzo Amazon per ECOVACS DEEBOT T...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:06.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v