Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: Macro con excel

  1. #1

    Macro con excel

    dovrei creare una macro con excel, in modo che questa copi dei dati su un foglio nuovo, aggiungendo però in una nuova riga i nuovi dati immessi, salvando quelli precedenti.

    Aspetto suggerimenti, grazie.
    [.::MDT::.]

  2. #2
    Moderatore di Windows e software L'avatar di darkkik
    Registrato dal
    Dec 2003
    residenza
    Pavia - Milano - Lodi.
    Messaggi
    11,476
    Non puoi copiare semplicemente tutto il foglio, una volta finito il lavoro?
    I can see much clearer now, I'm blind.
    Io fui già quel che voi siete, Quel ch'io son voi anco sarete.
    Remember that death is not the end, but only a transition
    All that we learn this time is carried beyond this life.

  3. #3
    no, scusa, mi spiego meglio:
    ho una tabella, dove inserisco dei dati, e vorrei che quando aggiorno una riga di questa tabella, venga copiata in un altro foglio; quindi se io cambio i dati ad esempio 3 volte, nell'altro foglio vorrei che comparissero 3 righe con quei dati.

    grazie.
    [.::MDT::.]

  4. #4
    Moderatore di Windows e software L'avatar di darkkik
    Registrato dal
    Dec 2003
    residenza
    Pavia - Milano - Lodi.
    Messaggi
    11,476
    oK, scusa nn avevo capito.
    Puoi collegarle semplicemente, tu esegui con una formula (=foglio[x]![xlettera][xnumero]) e vedrai che al variare della cella di riferimento varierà anche nella cella collegata.
    ciao.
    I can see much clearer now, I'm blind.
    Io fui già quel che voi siete, Quel ch'io son voi anco sarete.
    Remember that death is not the end, but only a transition
    All that we learn this time is carried beyond this life.

  5. #5
    si, ma io vorrei non solo che variasse, ma che AGGIUNGESSE la nuova riga in automatico lasciando i precedenti valori!

    spero di essere stato chiaro a sufficienza...
    [.::MDT::.]

  6. #6
    Moderatore di Windows e software L'avatar di darkkik
    Registrato dal
    Dec 2003
    residenza
    Pavia - Milano - Lodi.
    Messaggi
    11,476
    Allora fai così:
    copia tutta l'area che ti serve per inserire i dati;
    seleziona nel nuovo foglio un'area che sia delle stesse dimensioni dell'area copiata;
    fai un'incolla speciale, ti si apre una finestra, seleziona "incolla collegamento" ; al variare dei dati nelle celle della prima area, varieranno anche nell'area collegata.
    I can see much clearer now, I'm blind.
    Io fui già quel che voi siete, Quel ch'io son voi anco sarete.
    Remember that death is not the end, but only a transition
    All that we learn this time is carried beyond this life.

  7. #7
    scusa...
    provo a rispiegarmi...

    devo aggiornare un dato in una tabella creato in una pagina
    di nome (dati)

    quello che vorrei fare sarebbe
    che il dato si memorizzi su un altra pagina automaticamente
    senza coprire quello precedente e AGGIUNGENDOLO in una nuova riga.


    in pratica ho una pagina che aggiorno spesso con nuovi dati, mentre vorrei che il secondo foglio fungesse da archivio. sicuramente occorre fare una macro quindi, magari pure con un pulsante che azzeri automaticamente i dati del primo foglio e li aggiunga al secondo.

    mi sono spiegato?
    [.::MDT::.]

  8. #8
    Moderatore di Windows e software L'avatar di darkkik
    Registrato dal
    Dec 2003
    residenza
    Pavia - Milano - Lodi.
    Messaggi
    11,476
    Sì,dunque...
    Dovresti creare la macro che copi il tuo dato e l'incolli nella nuova cella nell'altro foglio,dopo devi entrare nell'editor di Visual basic e modificarla:
    premessa; VB di excel vede righe e colonne come Raw e Column, devi modificare la tua macro con un contatore che aggiorni di +1 fino alla prima cella vuota, ogni volta che vede una cella piena.
    Non l'ho mai fatto e adesso ho paura di nn farcela a provare, se vuoi ci aggiorniamo, oppure aspetta se qualcun altro ha un sistema più semplice, nel frattempo provo.
    I can see much clearer now, I'm blind.
    Io fui già quel che voi siete, Quel ch'io son voi anco sarete.
    Remember that death is not the end, but only a transition
    All that we learn this time is carried beyond this life.

  9. #9
    grazie!
    era proprio la risposta che cercavo!
    se ci riesci fammi sapere con l'aggiornamento delle varie stringhe di VB, altrimenti spero che qualcuno mi dia una mano!
    grz ancora!
    [.::MDT::.]

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    50
    Ciao, stò cominciando ad imparare VBA e ho provato a risolvere il tuo problema, sicuramente non sarà una sintassi perfetta ma funziona.
    Creati un pulsante sul Foglio1 e associa questa macro:

    Sub CopiaDati()
    Worksheets("Foglio1").Select
    ActiveSheet.UsedRange.Select
    Selection.Copy
    Worksheets("Foglio2").Activate
    Range("A1").Select
    If ActiveCell = "" Then
    ActiveSheet.Paste
    Else
    For y = 65536 To 1 Step -1
    If Cells(y, 1).Value <> Empty Then
    Cells(y, 1).Offset(1, 0).Select
    ActiveSheet.Paste
    Exit For
    End If
    Next
    End If
    End Sub

    A questo punto prova a digitare qualche dato nel Foglio1 e clicca sul pulsante per lanciare la macro.
    Fammi sapere se funziona, ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.