Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[EXCEL] Selezione Variabile Celle

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

[EXCEL] Selezione Variabile Celle

Postdi beastmaster » 24/05/11 09:06

Inannzitutto buongiorno a tutti.

E' il mio primo post nel forum e devo fare i miei complimenti per l'ottimo lavoro che svolgete.

io ho 2 fogli di lavoro
sul primo ho l'elenco dei miei contatti
sul secondo ho una maschera che impostero' per la stampa

sul primo foglio ho impostato i filtri automatici

avrei bisogno di impostare sul secondo foglio i campi relativi alla voce selezionata dal filtro ma non so come impostare nel secondo i valori variabili.

spero di esser stato chiaro.

grazie anticipatamente per il consiglio.

BM
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Sponsor
 

Re: [EXCEL] Selezione Variabile Celle

Postdi Avatar3 » 24/05/11 11:27

Puoi usare una macro di questo tipo

Codice: Seleziona tutto
Sub CompilaScheda()
 UR = Worksheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
    Application.ScreenUpdating = False

    If Sheets("Foglio1").AutoFilterMode Then
        UR = Range("A" & Rows.Count).End(xlUp).Row
        For I = 2 To UR
            If Rows(I).EntireRow.Hidden = False Then
'<<<< qui inserirai i campi da copiare dal foglio1 al foglio2
                MsgBox Worksheets("Foglio1").Range("A" & I).Value  '<<<< messaggio test che ti fa vedere il contenuto della colonna "A"
            End If
        Next I
    End If
    Application.ScreenUpdating = True
End Sub
Per il funzionamento delle macro si deve impostare la protezione a Bassa o Media.
Menu Strumenti -> Macro -> Protezione...
Avatar utente
Avatar3
Utente Senior
 
Post: 569
Iscritto il: 04/04/11 09:04

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 24/05/11 12:35

purtroppo non so proprio come applicare la macro

io ho sempre lavorato con le forume base di excel

io avrei delle colonne da reimportare nella seconda maschera, come faccio ad associarle?
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Re: [EXCEL] Selezione Variabile Celle

Postdi Avatar3 » 24/05/11 13:23

E come pensi possiamo aiutarti se non indichi dove sono i dati originali e dove vorresti inserirli?
es.:
il dato della colonna A del foglio1 dove vorresti averlo nel foglio2?
così pure il dato della colonna B del foglio1 in quale cella del foglio2 vorresti averlo

perché immagino che il foglio2 sia un modello di stampa e quindi i dati che sono su una riga del foglio1 vadano ad inserirsi su questo modello che hai preparato.

A questo punto è opportuno che invii le "coordinate In" e "coordinate Out" oppure il file
Per il funzionamento delle macro si deve impostare la protezione a Bassa o Media.
Menu Strumenti -> Macro -> Protezione...
Avatar utente
Avatar3
Utente Senior
 
Post: 569
Iscritto il: 04/04/11 09:04

Re: [EXCEL] Selezione Variabile Celle

Postdi ricky53 » 24/05/11 13:30

Ciao,
in merito a:
beastmaster ha scritto:avrei bisogno di impostare sul secondo foglio i campi relativi alla voce selezionata dal filtro ma non so come impostare nel secondo i valori variabili.

puoi dire quali "campi" (colonne del Foglio1) vuoi avere in stampa ?

Invece in
beastmaster ha scritto:io avrei delle colonne da reimportare nella seconda maschera, come faccio ad associarle?

cos intendi con "seconda maschera" ?
Forse le celle del Foglio2 ?

Puoi fornire informazioni dettagliate e ... leggendo la mia firma ...
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [EXCEL] Selezione Variabile Celle

Postdi Anthony47 » 24/05/11 13:38

Ciao beastmaster, benvenuto nel forum.
Mi associo a quanto detto da Avatar e Ricky: senza un minimo di layout dei tuoi dati, quelli di partenza e quelli che vuoi ottenere, e' difficile dare un contributo; per allegare un file di esempio o lo screenshot vedi qui: viewtopic.php?f=26&t=80395

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13892
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 24/05/11 15:40

Avete proprio ragione, sono un casinaro.

Allora.

Foglio1

colonne suddivise con i rispettivi campi

nome - col.A
indirizzo - col.B
telefono - col.C
email - col.D
e così via
il tutto ordinato col filtro automatico

Foglio2

una simil maschera dove visualizzare solamente il campo filtrato dal foglio1

non so proprio come collegare le righe filtrate con i campi della "maschera di stampa" del foglio2.


spero di esser stato un pelino piu' chiaro.

grazie a tutti
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 24/05/11 15:41

beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Re: [EXCEL] Selezione Variabile Celle

Postdi Avatar3 » 24/05/11 16:02

Una macro che compila la scheda per la stampa potrebbe essere questa
Codice: Seleziona tutto
Sub CompilaScheda()
 UR = Worksheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
    Application.ScreenUpdating = False
    If Sheets("Foglio1").AutoFilterMode Then
        UR = Sheets("Foglio1").Range("A" & Rows.Count).End(xlUp).Row
        For I = 2 To UR
            If Rows(I).EntireRow.Hidden = False Then
                Worksheets("Foglio1").Range("A" & I).Copy Destination:=Worksheets("Foglio2").Range("B2")
                Worksheets("Foglio1").Range("B" & I).Copy Destination:=Worksheets("Foglio2").Range("B4")
                Worksheets("Foglio1").Range("D" & I).Copy Destination:=Worksheets("Foglio2").Range("B6")
                Worksheets("Foglio1").Range("F" & I).Copy Destination:=Worksheets("Foglio2").Range("B8")
                Worksheets("Foglio1").Range("G" & I).Copy Destination:=Worksheets("Foglio2").Range("B10")
                Worksheets("Foglio1").Range("H" & I).Copy Destination:=Worksheets("Foglio2").Range("B12")
                Worksheets("Foglio1").Range("I" & I).Copy Destination:=Worksheets("Foglio2").Range("B14")
                'exit sub
            End If
            'Worksheets("Foglio2").select
            'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        Next I
    End If
    Application.ScreenUpdating = True
End Sub

adesso bisogna capire se dopo la filtratura tu hai più righe e devi stampare tutti i contatti filtrati o solo il primo
nel caso di voler stampare solo il primo togli il commento a 'exit sub
avrai la tua scheda e la stamperai a mano
Se devi stampare tutte le righe (caso di più righe filtrate)
togli il commento alle righe
Codice: Seleziona tutto
'Worksheets("Foglio2").select
 'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Per il funzionamento delle macro si deve impostare la protezione a Bassa o Media.
Menu Strumenti -> Macro -> Protezione...
Avatar utente
Avatar3
Utente Senior
 
Post: 569
Iscritto il: 04/04/11 09:04

Re: [EXCEL] Selezione Variabile Celle

Postdi ricky53 » 24/05/11 16:11

Ciao,
oltre quanto già suggerito con la macro di Avatar, se non vuoi utilizzare una macro oppure come alternativa
prova con:
1. Definisci un nome elenco (sono i clienti di colonna "A" del Foglio1) con il nome "Clienti"
2. vai sul foglio 2 cella "B2" ed inserisci la convalida, elenco, e scrivi "=Clienti"
3. scegli dalla cella "B2" (dall'elenco a tendina un cliente) un cliente
4. in "B4" scrivi
Codice: Seleziona tutto
=CERCA.VERT(B2; Foglio1!$A$2:$I$10; 2; 0)
ed avrai la località
5. stesssa cosa del punto "4" per gli altri campi dove sostituirai nel CERCA.VERT il "; 2;" con il numero della colonna del foglio 1 che contiene il dato che cerchi (es. la Provincia è "3", l'e-mail è "8", ecc.)
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 27/05/11 14:33

grazie mille per l'aiuto a tutti

la soluzione per me più fattibile e di semplice comprensione è quella di ricky - non avertene a male avatar ma non ne capisco nulla di macro.

io ho provato a compilare la maschera di ricerca associando la funzione postata da ricky alle rispettive celle ma...

https://rapidshare.com/files/2104740684/prova.xls

dalla cella 10 va in blocco #RIF e lo stesso con le righe superiori al 10.

dove sbaglio? sto diventando matto...

dopo aver provato il menù a tendina in discesa pensavo di aver risolto il mio problema ma mi trovo bloccato ora...

grazie anticipatamente ragazzi!
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Re: [EXCEL] Selezione Variabile Celle

Postdi Avatar3 » 27/05/11 15:34

Per farti prendere gusto alle macro ti invio il file completo
https://rapidshare.com/files/637481841/prova3.xls

Vai sul foglio maschera e seleziona un cliente nella cella B2...

che ne dici? ;)
Per il funzionamento delle macro si deve impostare la protezione a Bassa o Media.
Menu Strumenti -> Macro -> Protezione...
Avatar utente
Avatar3
Utente Senior
 
Post: 569
Iscritto il: 04/04/11 09:04

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 30/05/11 07:07

che spettacolo!

con questo metodo la selezione del cliente e la compilazione automatica della scheda è proprio come volevo io!!!

l'unico problema è che se confermo la stampa non stampa :eeh:

comunque sia è ottima come tabella!

ora la provo e vi farò sapere se va bene così o se necessita di miglioramenti.

grazie per l'aiuto!!! ;)
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55

Re: [EXCEL] Selezione Variabile Celle

Postdi Avatar3 » 30/05/11 09:30

Si c'è un'errore nella variabile di RispStampa
dal foglio premi i tasti ALT+F11
ti troverai il codice della macro
Alla fine della macro troverai questo codice (riporto 7 righe come riferimento)
Codice: Seleziona tutto
Stampa:
    Application.ScreenUpdating = True
RispStampa = MsgBox(Prompt:=" VUOI STAMPARE ?", Buttons:=vbYesNo)
        If Scelta4 = 6 Then   '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<  riga da modificare
            Worksheets("MASCHERA STAMPA").Select
            ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
        End If


Devi solo modificare la riga evidenziata con '<<<<<<<<<<<<<<<<<<<<<
inserendo RispStampa invece di Scelta4 in questa maniera
Codice: Seleziona tutto
 If RispStampa = 6 Then   


Adesso, se hai fatto tutto correttamente, stamperai quando premi SI sul messaggio di stampa
Per il funzionamento delle macro si deve impostare la protezione a Bassa o Media.
Menu Strumenti -> Macro -> Protezione...
Avatar utente
Avatar3
Utente Senior
 
Post: 569
Iscritto il: 04/04/11 09:04

Re: [EXCEL] Selezione Variabile Celle

Postdi beastmaster » 31/05/11 07:19

OTTIMO E FUNZIONANTE!!!

ora lo provo e vi farò sapere!
beastmaster
Newbie
 
Post: 7
Iscritto il: 24/05/11 08:55


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL] Selezione Variabile Celle":


Chi c’è in linea

Visitano il forum: PcBase e 6 ospiti