Hardware Upgrade Forum

Hardware Upgrade Forum (https://www.hwupgrade.it/forum/index.php)
-   Programmi e Utility (https://www.hwupgrade.it/forum/forumdisplay.php?f=37)
-   -   Excel: problematiche e soluzioni (https://www.hwupgrade.it/forum/showthread.php?t=2102242)


-michael- 18-04-2016 07:22

@Raffaele53 premetto che non ho mai usato Excel quindi per me è tutto arabo.
Ho provato a fare quello che mi hai detto (e che ho capito), ma il risultato è sempre 0.
Essendo un novincello e ignorando tutto di Excel, ho registrato un video di quello che ho fatto (così puoi vedere se ho fatto correttamente).

Il video lo trovi quà QUA

I file di prova su cui sto provando li puoi trovare qui QUI

Inoltre, come si fa a incollare la stessa formula in tute le celle di una colonna in una sola volta? Il file originale ha migliaia di email e farlo a mano sarebbe mo lto lungo.

Se tu (o qualche altro volenteroso) riuscissi a farmi un filmato utilizzando il mio file Excel d'esempio su quello che devo fare per riuscire a eliminare i contatti del foglio 2 dal foglio 1, te ne sarei molto grato. Un video vale più di mille parole (almeno nel mio caso :p )

c3n2o 18-04-2016 10:26

Quote:

Originariamente inviato da Raffaele53 (Messaggio 43584902)
@c3n2o
>>>ThisCell.Interior.Color = RGB(0, 250, 250)
Scrivere direttamente la cella che vuoi colorare, EX
Range("A1").Interior.Color = RGB(0, 250, 250)

Mettiamo che ho 5x5 celle con i bottoni radio.. ogni cella avrà il suo Range("xx")... giusto?
Mettiamo che voglia aggiungere una colonna.. Se faccio un copia/incolla dell'ultima colonna (la E) mi ritroverei sulla colonna copiata (la F) delle macro che fanno riferimento alla colonna precedente (quindi le macro saranno Range("Ex"), invece di Fx).. dovrei scrivere un altra macro che mi modifica la macro precedente o cosa?

Ho provato adesso a mettere sulla cella A1 le 3 macro per i tre pulsanti, ma come pensavo se copio e incollo in A2:A3, la macro punta sempre ad A1.. mentre mi serve che per i pulsanti in A2 puntasse ad A2 e in A3 puntasse in A3..

Quindi: come faccio a copiare la macro dicendogli che deve aggiornare il Range("xx")?

Grazie

Raffaele53 18-04-2016 12:49

@-michael-
Copia ed incolla in B1=OK
Adesso seleziona la cella B1 sposta il mouse sull'angolo destro-basso della stessa cella, finchè il simbolo del mouse CAMBIA, diventando come il simbolo +
Premi il tasto sinistro e tenendolo premuto, trascina la cella in basso sino dove vuoi.

@c3n2o
>>>copiare la macro dicendogli che deve aggiornare il Range("xx")?
Una macro fà quello che c'è scritto all'interno e non cambierà MAI le celle.Ti scrivi una macro distinta per ogni bottone
Oppure usi il DoppioClick (senza mettere bottoni). Questa colora oppure toglie il colore casomai aumenta l'area se devi inserire righe/colonne

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A1:F5")) Is Nothing Then 'modificare l'area
If Target.Offset(0, 0).Interior.Color = xlNone Then
Target.Offset(0, 0).Interior.Color = RGB(0, 250, 250)
Else
Target.Offset(0, 0).Interior.Color = xlNone
End If
End If
End Sub

c3n2o 18-04-2016 13:42

Quote:

Originariamente inviato da Raffaele53 (Messaggio 43586120)
@c3n2o
>>>copiare la macro dicendogli che deve aggiornare il Range("xx")?
Una macro fà quello che c'è scritto all'interno e non cambierà MAI le celle.Ti scrivi una macro distinta per ogni bottone
Oppure usi il DoppioClick (senza mettere bottoni). Questa colora oppure toglie il colore casomai aumenta l'area se devi inserire righe/colonne

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A1:F5")) Is Nothing Then 'modificare l'area
If Target.Offset(0, 0).Interior.Color = xlNone Then
Target.Offset(0, 0).Interior.Color = RGB(0, 250, 250)
Else
Target.Offset(0, 0).Interior.Color = xlNone
End If
End If
End Sub

Grazie mille.. ci studio un pò e vedo cosa riesco a fare.. forse sono io che mi sto complicando la cosa..

-michael- 19-04-2016 07:32

Quote:

Originariamente inviato da Raffaele53 (Messaggio 43584902)

@-michael-
Ammettiamo che i dati siano sul foglio1 colonna A
Ammettiamo che i doppioni siano sul foglio2 colonna A
Sul foglio1 cella B1=CONTA.SE(Foglio2!A:A;A1), dopo trascini la formula in basso. Tutte le righe con il risultato maggiori di zero puoi cancellare

@-michael-
Copia ed incolla in B1=OK
Adesso seleziona la cella B1 sposta il mouse sull'angolo destro-basso della stessa cella, finchè il simbolo del mouse CAMBIA, diventando come il simbolo +
Premi il tasto sinistro e tenendolo premuto, trascina la cella in basso sino dove vuoi.

Risolto.

Grazie :mano:

c3n2o 19-04-2016 10:11

Quote:

Originariamente inviato da c3n2o (Messaggio 43586311)
Grazie mille.. ci studio un pò e vedo cosa riesco a fare.. forse sono io che mi sto complicando la cosa..

Forse riesco a semplificare la cosa.. invece di usare la Macro uso la formattazione condizionale..
Riscrivo x completezza il problema:
SPOILER: Diciamo che ho 5x5 (A1:E5) celle con 3 pulsanti radio per ogni cella. I tre pulsanti radio colorano la cella di 3 colori diversi (per semplificare R, G, B).
Vorrei aggiungere altre colonne copiando l'ultima colonna (E1:E5) in modo ricorsivo, quindi prima in F, poi in G.. oppure usando il modo di trascinamento per copiare le celle.

Resta però il problema che quando copio le celle i pulsanti radio restano legati alle celle precedenti.. forse è qui che serve la macro:
serve qualcosa che modifichi in automatico (quando copiate) il riferimento alle celle dei bottoni radio..(quindi nell'esempio sopra copia E1:E5 in F1:F5.. ma se cambio i pulsanti in Fx, mi cambia il colore di Ex..

Grazie

-michael- 19-04-2016 11:20

Come eliminare e i dati nelle celle della colonna A del foglio 2 dalla colonna A del foglio 1 in un documento Excel?


Ecco la soluzione (con Excel presente in Office 2007) per tutti quegli utenti che hanno bisogno di una spiegazione passo passo:

1 - Scrivere sul foglio 1 nella cella B1 "=CONTA.SE(Foglio2!A:A;A1)" (senza le virgolette/apici) e premere il tasto invio.

2 - Selezionare la cella B1 a copiarla. Per farlo basta premere il tasto destro del mouse sulla cella e selezionare "copia" o in alternativa premere in successione ctrl+C con la tastiera. Il contorno tratteggiato della casella inizierà a muoversi. Fare doppio clic con il mouse su una casella vuota per farla fermare.

3 - Andare all'ultima casella in basso che si vuole controllare della colonna B e clicca con il mouse (la casella sarà selezionata e avrà il contorno nero).

4 - Con il mouse andare nella barra di scorrimento del documento. Cliccare e tenere premuto la barretta di scorimento libero e portarla in cima al documento.

5 - Premere e tenere premuto il tasto "Shift"(maiuscolo) della tasiera e con il mouse cliccare sulla cella B1. In questo modo Saranno selezionate tutte le celle.

6 - Premere ctrl+v dalla tastiera per incollare la casella B1 selezionata e copiata in precedenza in tutte le altre celle della cononna B.

7 - In tutte le caselle della colonna B1 appariranno dei numeri (dallo 0 (zero) in poi.

8 - Selezionare la colonna B cliccando semplicemente sulla lettera.

9 - Cliccare in alto a destra su "Home".

10 - Cliccare in alto a sinistra su "Ordina e filtra".

11 - Nela finestra a discesa che appare cliccare su "Ordina dal più grande al più piccolo".

12 - Apparirà una finestra di avviso che dice: "Esistono dei dati vicino alla selezione.Poichè non sono stati inclusi nella selezione, questi dati non saranno ordinati. Scegliere un'opzione: espandere la selezione. Continuare con la selezione corrente."

13 - Selezionare "Espandere la selezione" e cliccare su "Ordina". Tutti i valori superiori a 0 (zero) verranno messi in alto).

14 - Adesso si potranno cancellare facilmente tutti quei contatti che danno un valore superiore a 0 (zero).

15 - Scorrere il documento verso il basso e cliccare con il tasto sinistro del mouse sull' ultima cella della colonna B1 che ha ha come numero uno superiore a 0 (zero). Da questa casella in giù, tutti i numeri dovrebbero essere 0 (zero)

16 - Premere e tenere premuto il tasto "Shift"(maiuscolo) della tasiera e con il mouse cliccare sulla cella a fianco nella colonna A (stessa riga quindi).

17 - Con il mouse andare nella barra di scorrimento del documento. Cliccare e tenere premuto la barretta di scorimento libero e portarla in cima al documento.

18 - Premere e tenere premuto il tasto "Shift"(maiuscolo) della tasiera e con il mouse cliccare sulla cella A1 (si selezionerà anche la colonna B).

19 - Premere il tasto "Canc" sulla tastiera e verranno cancellate le caselle della colonna A e B selezionate prima.

20 - Selezionare la colonna B cliccando semplicemente sulla lettera B (tutta la colonna sarà selezionata).

21 - Premere il tasto "Canc" sulla tastiera e l'intera colonna sarà cancellata.

22 - Selezionare con il mouse la prima casella dela colonna A con dati (sopra di questa dovrebbero esserci solamente caselle vuote).

23 - Premere in successione sulla tastiera e tenere premuti ctrl+shift.

24 - Tenendo sempre premuto ctrl+shift, premere il tasto della freccetta verso il basso della tastiera (verranno selezionate tutte le caselle non vuote).

25 - Premere in successione ctrl+X sulla tastiera (comando per tagliare).

26 - Con il mouse andare nella barra di scorrimento del documento. Cliccare e tenere premuto la barretta di scorimento libero e portarla in cima al documento.

27 - Selezionare la casella A1 e premere in successione ctrl+V (comando per incollare). Tutti i dati precedentemente tagliati verranno incollati in cima al documento.


Adesso si avrà una lista pulita senza i dati presenti nel foglio 2.


Ringrazio l'utente Raffaele53 per il gentile aiuto.

Raffaele53 19-04-2016 15:12

@-michael-
Non mi sembra corretto. Usare un modo semplice per creare un post "risolutivo"
Il mio era solo un metodo, oppure avrei scritto una formula più complessa e più facile da eseguire.

@c3n2o
Ognuno si esprime in modo personale.
Ex: "pulsanti radio" sono forse i bottoni circolari???

Perchè non alleghi un file con esempi/spiegazioni varie descritte all'interno? Mi sembra che esista un comando "complesso" per sapere in quale cella sia (adesso non ricordo). Mà se spieghi il problema del colore, forse posso dare un'altra soluzione.

-michael- 19-04-2016 15:20

@Raffaele53 Perdonami ma non ti seguo. In cosa ho sbagliato? :(

ugo73 19-04-2016 19:58

Ciao

ho questa formula:

Codice:

=SE(O
    (E(A9=2001;O(E(C9=1;MESE($G$5)=6);E(C9=2;MESE($G$5)=7);E(C9=3;MESE($G$5)=8);E(C9=4;MESE($G$5)=9);E(C9=5;MESE($G$5)=10)));
      E(A9=1668;O(E(C9=1;MESE($G$5)=6);E(C9=2;MESE($G$5)=7);E(C9=3;MESE($G$5)=8);E(C9=4;MESE($G$5)=9);E(C9=5;MESE($G$5)=10)));
      E(A9=3805;O(E(C9=1;MESE($G$5)=6);E(C9=2;MESE($G$5)=7);E(C9=3;MESE($G$5)=8);E(C9=4;MESE($G$5)=9);E(C9=5;MESE($G$5)=10)))
    );"";"Errore di tipo 1")


in patrica non mi funziona la seguente parte:

Codice:

E(A9=3805;O(E(C9=1;MESE($G$5)=6);E(C9=2;MESE($G$5)=7);E(C9=3;MESE($G$5)=8);E(C9=4;MESE($G$5)=9);E(C9=5;MESE($G$5)=10)))
e non capisco il perché

Grazie

Ugo

Raffaele53 20-04-2016 00:01

Forse questo forum crea gli accapi, mà togliendoli funziona.
Si dovrebbe vedere un esempio per verificare che non funzioni?

c3n2o 20-04-2016 09:33

1 Allegato(i)
Quote:

Originariamente inviato da Raffaele53 (Messaggio 43590320)

@c3n2o
Ognuno si esprime in modo personale.
Ex: "pulsanti radio" sono forse i bottoni circolari???

Perchè non alleghi un file con esempi/spiegazioni varie descritte all'interno? Mi sembra che esista un comando "complesso" per sapere in quale cella sia (adesso non ricordo). Mà se spieghi il problema del colore, forse posso dare un'altra soluzione.


Allora ho fatto il file. Nella prima cartella c'è solo A1 con i tre pulsanti.

Se la copio (sia con copia/incolla sia trascinando l'angolino), i bottoni circolari restano collegati ad A1 (nel file la seconda cartella di lavoro -"Finale Sbagliato") invece di aggiornarsi a B1.

Il risultato dovrebbe essere come nella cartella "Finale corretta a mano", dove dopo la copia ho corretto il valore a mano.. sostituendo A1 con B1.


Il risultato finale di tutto ciò sarà che posso creare una tabella NxM celle facendo un rapido copia incolla della cella A1..

Sotto l'allegato..

Allegato 90932

Raffaele53 20-04-2016 15:17

Dal Tuo esempio, in ogni cella esiste una Casella di gruppo + 3 Pulsante di opzione. NB = Totale 4
Posizionandoti mouse destro su "Option Button 2" vedi in alto è abbinato alla cella ex $A$1. Se invece metti A1, anche se inserisci colonne/righe si adegua da solo.
NB. Dato che gli elementi all'interno della cella sono 4, nel codice ho messo Tot = 2, perchè il 1° sarà il nome gruppo, il 2° sarà il Button (inutile fare il 3/4 che sono ancora button)
A questo punto puoi copiare/incollare la cella dove Vuoi.
Se sei sul foglio giusto premendo ALT+F11, si apre l'editor ed incolli sulla destra il codice sotto che dovrai avviare ogni volta che inserisci nuove celle.

Sub Cella_Shapes()
Dim N, X, Ind, Tot
Tot = 2
X = ActiveSheet.Shapes.Count
For N = 1 To X
If ActiveSheet.Shapes(N).Name Like "Group Box*" Then
Ind = Replace(ActiveSheet.Shapes(N).TopLeftCell.Address, "$", "")
ActiveSheet.Shapes(N).Select
ElseIf ActiveSheet.Shapes(N).Name Like "Option Button*" Then
ActiveSheet.Shapes(N).Select
With Selection
.LinkedCell = Ind
End With
N = N + Tot
End If
Next N
MsgBox "fatto"
End Sub

c3n2o 21-04-2016 09:54

Quote:

Originariamente inviato da Raffaele53 (Messaggio 43593920)
Posizionandoti mouse destro su "Option Button 2" vedi in alto è abbinato alla cella ex $A$1. Se invece metti A1, anche se inserisci colonne/righe si adegua da solo.

Grazie mille :ubriachi: :flower: :flower:
Non ci sarei mai arrivato..

Dario 1 30-05-2016 13:16

Salve a tutti.
Sto compilando un catalogo di una collezione di insetti (!) di un museo, conservata in varie scatole. Devo mettere un cartellino su ogni insetto della collezione, e sono migliaia! :eek:

Sto facendo con Excel il catalogo: ho impostato la tabella così nel FOGLIO 1:



Nel FOGLIO 2 vorrei fare i cartellini, che poi stamperò e ritaglierò, da mettere sullo spillo degli insetti: vorrei che comparissero i dati in automatico, secondo questo schema:



In pratica: ogni cartellino (foglio 2) ha 3 righe e 2 colonne. Ciò che si trova nella stessa riga nel Foglio 1 viene qui distribuito come vedete: primo nome, poi sotto il secondo nome, poi sotto il terzo nome, quindi si passa alla colonna 2, dove ci sarà il quarto nome, poi sotto una cella vuota, poi sotto il numero, sempre da copiare dalle celle del Foglio 1.

C'è un modo per far tutto in automatico? Sostanzialmente la formula deve copiare la cella A2 del Foglio 1 e metterla nel foglio 2, poi deve saltare 2 righe e mettere la cella A3 sotto ecc...

Grazie a tutti e scusate il casino. Se servono altri dati ditemelo e li metto subito, secondo le vostre indicazioni.

Raffaele53 30-05-2016 15:54

Se in foglio2 in A4, metti =INDIRETTO("Foglio1!A"&INT((RIF.RIGA()-1)/3)+1)
Appare "Cane", nelle altre celle a fianco stessa formula cambiando solo una lettera della formula in Foglio1!B, Foglio1!C, Foglio1!D e Foglio1!E
Una volta fatto selezioni le celle A4:B6, vai col mouse in basso a destra della selezione (puntino) il mouse cambia forma, clicca sul sinistro e tenendolo premuto trascini in basso

Dario 1 30-05-2016 16:48

Eccezionale! Sei la mia salvezza! :winner:
Dovrò scrivere una relazione per il museo: posso citarti nei ringraziamenti?

JonaJams 07-06-2016 10:57

Voglio chiedere un consiglio: ho un foglio excel collegato a varie formule, che prendono in considerazione un elenco di dati che ho copiato da un altro file. Vorrei creare un pulsante, con selezione a tendina, che mi cambia i dati sul foglio in base alle diverse scelte che aggiungo (sono dati giornalieri, aggiorno ogni giorno il pulsante con i collegamento ai nuovi dati); in questo moodo potrei valutare le formule in maniera più veloce.

So usare decentemente excel ma zero conoscenza di vb :cry:
Spero abbiate capito!

serbring 08-06-2016 10:56

Ciao a tutti,

ricordo che in excel 2007 usavo una funzionalità di un grafico che permette di selezionare rapidamente il campo e in tal modo si può fare un grafico unico in cui tramite un menu a tendina dove è possibile selezionare il campo che si desidera plottare. Tutto questo per evitare di tappezzare il foglio di lavoro con diversi plot. Non ricordo il nome della funzionalità e cercando nella guida non sono riuscito a trovarla. Vi ricordate il nome?

grazie

ugo73 18-06-2016 10:48

Formule in una matrice costante
 
Ciao,

devo inserire delle formule in una matrice costante è possibile?

in particolare sto usando come formula principale quella relativa la giorno lavorativo e devo inserire i giorni vacanze i quali però variano da anno ad anno e quindi non posso semplicemente inserire la data in formato numero seriale ma devo far riferimento all'anno di riferimento che è dato in una cella (A1)

si può fare?

Ugo


Tutti gli orari sono GMT +1. Ora sono le: 14:21.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Hardware Upgrade S.r.l.