Benvenuto Ospite Cerca | Topic Attivi | Utenti | | Log In | Registra

Excel: aiuto. Opzioni
mblu
Inviato: Thursday, November 10, 2005 3:16:32 PM
Rank: AiutAmico

Iscritto dal : 6/28/2005
Posts: 58
Su un foglio di excel, è presente una tabella con all'interno dei numeri a 4 cifre. Devo poi, selezionare uno di questi numeri e collocarlo in una cella appartenente ad un altro foglio. Si potrebbe fare con copia e incolla ma volevo sapere se c'era un altro sistema magari più veloce ed elegante.
Grazie
ciao
Sponsor
Inviato: Thursday, November 10, 2005 3:16:32 PM

 
a10n11
Inviato: Thursday, November 10, 2005 4:49:13 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
i metodi possono essere parecchi.
a parte il copia e incolla facendo lo scroll dei fogli come dici tu, potresti in alternativa se la cella di destinazione è fissa usare una formula che legge il valore dell'origine. es. il valore da copiare si trova sul foglio1 cella A1 e deve essere copiato sulla cella A1 del foglio2 scriverai nella cella A1 del foglio2 la seguente formula: =Foglio1!A1 ( attenzione che farà casotto se il valore da trasferire è legato al risultato di una formula), potresti far ricorso ad una macro che automatizza il copia e incolla. (bisognerebbe conoscere esattamente come è configurato il lavoro)
Se si tratta solo di trasferire un valore rimango dell'idea che il copia e incolla è la soluzione migliore.
saluti
Andrea

mblu
Inviato: Friday, November 11, 2005 12:10:39 PM
Rank: AiutAmico

Iscritto dal : 6/28/2005
Posts: 58
Si, si tratta solo di trasferire numeri da una tabella app. ad un foglio ad una cella fissa di un altro foglio. I numeri non sono legati da formule. Cercavo un sistema che selezionata la cella del numero da trasferire, battendo invio si trasferisse automaticamente.
Ad ogni modo ti ringrazio per l'aiuto.
ciao
a10n11
Inviato: Friday, November 11, 2005 12:14:53 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
la soluzione si trova a tutto.
Si può in questo caso utilizzare una macro che sfrutta l'evento doppio clik sulla cella
ed attivare un codice che copia nella posizione che vuoi il valore.Dopo pranzo vedo di poterti mandare un esempio della macro.
saluti
Andrea

a10n11
Inviato: Friday, November 11, 2005 4:54:25 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
Ecco una possibile macro che sfrutta l'evento doppio click
Ogni volta che si esegue il doppio click sulle celle da B1 a B1000 si attiva la macro di cui sotto. Rilascia un messaggio che chiede la conferma per la copia del record. Nel caso che venga confermato, copia il valore della cella (Target)
nella stessa cella del foglio2 (es. se il valore da copiare si trova sul foglio1 cella B10, effettua la copia sul foglio2 cella B10.
Non conoscendo la struttura del tuo foglio dovrai modificare i rieferimenti.
saluti
Andrea
P.s. evidentemente la macro va inserita nell'oggetto foglio di pertinenza
(click Dx sulla linguetta del nome foglio, scegli "visualizza codice" nella finestra che si apre copiare la macro qui sotto)

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
Set zona1 = Range(Cells(1, 2), Cells(1000, 2))
If Not Intersect(Target, zona1) Is Nothing Then
Dim riga, colonna
riga = Target.Row
colonna = Target.Column
risposta = MsgBox("stai per copiare la cella- Vuoi contnuare?", vbYesNo)
If risposta = vbNo Then GoTo fine
Target.Copy
Sheets("foglio2").Activate
With ActiveSheet
.Cells(riga, colonna).Select
ActiveSheet.Paste
End With
Application.CutCopyMode = False
Sheets("foglio1").Select
End If
Resume
fine:
Range("A1").Select
End Sub




Edited by - a10n11 on 11/11/2005 17:01:08

mblu
Inviato: Monday, November 14, 2005 11:49:34 AM
Rank: AiutAmico

Iscritto dal : 6/28/2005
Posts: 58
Ciao Andrea,
innanzitutto ti ringrazio per la pazienza e la disponibilità.
Ho voluto provare il codice che hai preparato prima di applicarlo alla mia struttura. Ho inserito sul foglio1 nelle celle da B1 a B1000 dei numeri; sul foglio2 cella l'inserimento in B10.
Il tutto funziona alla perfezione. Tuttavia se seleziono un numero che sul foglio1 si trova per es. nella cella B20, cliccando due volte su di esso , me lo copia nella cella B20 del foglio2, e non nella cella B10 dove voglio che siano copiati i numeri.
Forse sbaglio qualcosa o è giusto che sia così?

grazie
ciao
a10n11
Inviato: Monday, November 14, 2005 12:26:21 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
salve.
In effetti la macro funziona proprio così, copia in valore esattamente nello stesso indirizzo di cella ma sul foglio 2 ( se il valore si trova nella cella B100 del foglio1 lo ricopia nella cella B100 del foglio2)
se invece come non avevo capito il valore in cui si effettua il doppio click in qualsiasi parte del range B1:B1000 deve essere scritto nella cella B10 del foglio2 dovrai modificare la macro come segue:

With ActiveSheet
.Cells(10, 2).Select
ActiveSheet.Paste

in questo modo la cella B10 riceverà sempre il valore della "doppiocliccata" (mi si passi il neologismo)

di conseguenza queste righe del codice potranno essere cancellate:

Dim riga, colonna
riga = Target.Row
colonna = Target.Column


saluti Andrea



Edited by - a10n11 on 11/14/2005 12:27:03

mblu
Inviato: Tuesday, November 15, 2005 8:27:04 AM
Rank: AiutAmico

Iscritto dal : 6/28/2005
Posts: 58
Ciao,
ho richiamato il file excel per effettuare la modifica così come mi hai consigliato. Ma ancor prima di modificare, la vecchia istruzione non funziona più. Un msg mi avverte che la macro del progetto è disattivata. Cosa devo fare per riattivarla? Quando l'ho realizzata, per lanciare la macro ho solo premuto F5.
Forse non ho seguito la giusta procedura?
Ciao
e grazie
a10n11
Inviato: Tuesday, November 15, 2005 9:28:15 AM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
probabilmente hai il livello di protezione delle macro settata su "elevata" mettila su media in modo che all'avvio di un file con macro ti chiede se attivarle o meno.
La protezione su eleavta accetta solo macro con firma digitale.

per settare il nuovo livello, apri un nuovo foglio di excel Menu Strumenti>Macro>protezione spunta il livello medio
chiudi excel e le nuove impostazioni saranno salvate. Quando aprirari il file contenente la macro ti verrà visualizzato il messaggio per l'autorizzazione alla attivazione della macro.
saluti
Andrea

a10n11
Inviato: Tuesday, November 15, 2005 9:32:56 AM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
per ulteriore chiarimento. Per come è scritta la macro non occorre richiamare la finestra di gestione della macro (F5) per lanciarla. Questa si attiva in automatico al doppio click sulla cella del range B1:B1000
saluti
Andrea


mblu
Inviato: Tuesday, November 15, 2005 12:37:15 PM
Rank: AiutAmico

Iscritto dal : 6/28/2005
Posts: 58
Ti ringrazio Andrea, tutto ok!

cari saluti
ciao
Utenti presenti in questo topic
Guest


Salta al Forum
Aggiunta nuovi Topic disabilitata in questo forum.
Risposte disabilitate in questo forum.
Eliminazione tuoi Post disabilitata in questo forum.
Modifica dei tuoi post disabilitata in questo forum.
Creazione Sondaggi disabilitata in questo forum.
Voto ai sondaggi disabilitato in questo forum.

Main Forum RSS : RSS

Aiutamici Theme
Powered by Yet Another Forum.net versione 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.