Excel Forum Per condividere esperienze su Microsoft Excel

VBA per copiare numeri da una posizione ad un'altra.

  • Messaggi
  • OFFLINE
    cico777
    Post: 208
    Registrato il: 27/05/2019
    Città: MILANO
    Età: 56
    Utente Junior
    2016
    00 15/06/2021 13:21
    Ciao, credo che quello che mi serve si possa fare solo col VBA anche se ammetto che non saprei come svilupparlo;
    se seleziono una cella in un dato range poi mi copia dei numeri dalla loro posizione ad un'altra, la complicazione stà nel fatto che alla cella che ho selezionato fanno riferimento altri numeri, a questo punto è meglio guardare il file allegato che spero sia comprensibile.

    Vi ringrazio per qualsiasi aiuto.
  • OFFLINE
    tanimon
    Post: 1.413
    Registrato il: 27/06/2011
    Utente Veteran
    excel 2007
    00 15/06/2021 16:51
    ciao a tutti,

    ciao cico,

    di seguito trovi le righe di codice che ti servono,
    sono per l'evento corretto, ma volutamente in sequenza errata e quindi non funzionerà.

    per ottenere il risultato atteso, devi metterle nella sequenza esatta.

    Per provare ad imparare qualcosa, pensi di riuscire a fare almeno questa fatica?


    vb
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim riga As Object, rig As Long
    
    Application.EnableEvents = True
    With Range("a:a")
    
            Range("c" & rig & ":l" & rig).Copy Range("at7")
            rig = riga.Row
    
            Range("c" & ActiveCell.Row & ":l" & ActiveCell.Row).Copy Range("at8")
       
            rig = riga.Row
    
    
    
    End With
    Set riga = .Find(Cells(1, ActiveCell.Column), LookIn:=xlValues)
    
    Application.EnableEvents = False
    
    End Sub
    








    Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
    Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
  • OFFLINE
    tanimon
    Post: 1.414
    Registrato il: 27/06/2011
    Utente Veteran
    excel 2007
    00 15/06/2021 20:13
    inoltre,

    QUI

    hai già posto il quesito ed ottenuto la soluzione.

    Morale:
    ho fatto benissimo a NON fornirti la mia, finita e corretta che spero NON riuscirai a correggere.

    E soprattutto NON te ne fornirò in futuro visto il tuo frequente cross posting.


    Ciao
    Frank







    Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
    Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
  • OFFLINE
    cico777
    Post: 208
    Registrato il: 27/05/2019
    Città: MILANO
    Età: 56
    Utente Junior
    2016
    00 15/06/2021 23:18
    Per quanto mi riguarda i due quesiti sono diversi non capisco come possa dirlo. Ho usato gli stessi numeri ma non significa che abbia chiesto lo stesso quesito. Son due cose diverse.
    [Modificato da cico777 15/06/2021 23:21]
  • OFFLINE
    tanimon
    Post: 1.415
    Registrato il: 27/06/2011
    Utente Veteran
    excel 2007
    00 15/06/2021 23:32
    ciao a tutti,

    ciao cico,
    ti ringrazio per darmi l'opportunità di ribadire quanto ho già detto.

    Frank







    Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
    Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
  • OFFLINE
    cico777
    Post: 209
    Registrato il: 27/05/2019
    Città: MILANO
    Età: 56
    Utente Junior
    2016
    00 15/06/2021 23:36
    Scusa ma non capisco, crossposting non e quando chiedo lo stesso quesito su due siti diversi? Se e cosi non riesco a capire. Grazie per il chiarimento. Se cosi non fosse chiedo scusa ho capito male. Non succedera piu.
    Chiedo gentilmente delucidazioni in modo che non possa piu capitare. Grazie.
    [Modificato da cico777 16/06/2021 00:13]
  • OFFLINE
    dodo47
    Post: 3.192
    Registrato il: 06/04/2013
    Utente Master
    2010
    00 16/06/2021 16:40
    Ciao
    @Frank

    Nell'altro forum il problema posto è diverso da quello qui richiesto, posso confermarlo in quanto la soluzione nell'altro forum l'ho data io.

    @Cico777 - hawk77

    Quando la finirete di registrarvi con alias diversi sarà sempre troppo tardi.....(mio parere personale)

    Ciò premesso
    poichè credo che tu non abbia scaricato la versione rivista, corretta ed implementata nel post #32 dell'altro forum (che ti invito a leggere), la allego qui, con l'aggiunta di quanto da te richiesto.

    Pertanto nell'allegato trovi la sub Corretta e la nuova funzionalità

    Dopo aver elaborato il tutto con il pulsante Start, basta che fai doppio click su un numero e nella parte in alto colorata ti verranno riportati i numeri relative alle due coordinate.
    NB. la relativa sub che sta nel modulo del foglio:
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    non si avvale dei numeri che tu hai riportato in col A ed in riga 1, che pertanto essendo inutili li ho eliminati

    Affianco al risultato vengono riportati anche le righe dalle quali sono stati presi.

    saluti

    [Modificato da dodo47 16/06/2021 16:42]
    Domenico
    Win 10 - Excel 2016
  • OFFLINE
    cico777
    Post: 210
    Registrato il: 27/05/2019
    Città: MILANO
    Età: 56
    Utente Junior
    2016
    00 16/06/2021 22:42
    Grazie Dodo per aver confermato ciò che ho detto. E' stato davvero gentile da parte tua prendere le mie difese, non è bello passare per cìò che non sei sopratutto se non puoi difenderti o se non chiariscono dietro mia richiesta. Non sapevo fossi anche in questo sito, e ti ringrazio per avermi risolto anche questo problema!
    Non l'ho voluto postare nell'altro anche questo per non sembrare invadente che chiede troppo, e quindi faccio un pò nell'uno e un pò nell'altro, perché come già sai conosco poco excel giusto qualcosa e senza il vostro aiuto rimarrei bloccato.
    Ma alla fine destino mi hai risolto anche questo.
    Il quesito dell'altro sito avevo scritto che si era risolto perché non mi ero accorto, cosa che tu mi hai fatto notare, che le celle vuote in realtà non erano vuote, e quindi non c'era più motivo per continuare ad aiutarmi mi bastava già.
    Di nuovo grazie di cuore.
  • OFFLINE
    dodo47
    Post: 3.193
    Registrato il: 06/04/2013
    Utente Master
    2010
    00 17/06/2021 09:09
    cico777:

    .......prendere le mie difese.......



    Cico,
    non mettermi in bocca parole che non ho detto...io non ho preso le difese di nessuno, ho solo riportato quanto avvenuto che, sicuramente in buona fede, era sfuggito.

    saluti



    Domenico
    Win 10 - Excel 2016