Discussione chiusa
Visualizzazione dei risultati da 1 a 10 su 10

copiare riga in base a valore cella nel rispettivo foglio

  1. #1
    giorgio61 non è in linea Novello
    Ciao a tutti avrei bisogno di una macro che verifica nell'ultima cella scritta colonna "D4" del foglio “INSERIMENTO DATI" se il testo e uguale a "A" seleziona intera riga la copia e la incolla nella prima riga vuota del foglio “TURNOA”, se nell'ultima cella scritta del foglio “INSERIMENTO DATI” della colonna "D4" il testo e uguale a "B" seleziona l'intera riga la copia e la incolla nella prima riga vuota del foglio" TURNOB" e
    cosi via per gli altri fogli, ( testo “C” in “D4” copia in foglio “ TURNOC”, testo “D” in “D4”copia in foglio “TURNOD”, testo “G” in “D4 copia in foglio “TURNOG”).

    Nel foglio “INSERIMENTO DATI” ho 12 celle da “B4” a “M4” dove inserisco i dati, uguale nei fogli : “TURNOA”,”TURNOB”,”TURNOC”,”TURNOD”, “TURNOG” dove li dovrei copiare.

    In pratica, mi servirebbe che, in base al turno che vado a scrivere nella cella “D4”, mi copiasse i dati nei rispettivi fogli aggiungendomeli a quelli già inseriti.

    Ringrazio tutti anticipatamente sarebbe veramente il top se oltre alla risoluzione del problema ci fossero anche i commenti x capire i comandi utilizzati !!!

    Grazie, Ciao

  2. #2
    Forse non hai letto bene il regolamento, ma qui non si fanno richieste di questo genere.

    Non puoi chiedere la soluzione pronta chiavi in mano ma devi proporre qualcosa tu eventualmente da correggere/migliorare.

    La "pappa pronta" è vietata.
    ℹ️ Leggi di più su AntonioG ...

  3. #3
    giorgio61 non è in linea Novello
    Ciao a tutti,
    chiedo scusa, ho dimenticato di inserire il codice (qui sotto)

    Nel foglio “INSERIMENTODATI” , in un modulo ho cercato di adattare questo codice alle mie esigenze, ma non riesco a farlo funzionare, mi da “errore di compilazione” “variabile non definita”

    Sub Copia()
    Dim righeINSERIMENTODATI As Long 'dichiaro variabile per numero righe foglio "INSERIMENTODATI"
    Dim righeTURNOA As Long 'dichiaro variabile per numero righe foglio "TURNOA"
    Dim righeTURNOB As Long 'dichiaro variabile per numero righe foglio "TURNOB"
    Dim miorange As Range 'dichiaro variabile per range colonna D
    righeINSERIMENTODATI = Sheets("INSERIMENTODATI").Range("D" & Rows.Count).End(xlUp).Row 'determino il numero delle celle piene in colonna D
    righeTURNOA = Sheets("TURNOA").Range("B" & Rows.Count).End(xlUp).Row 'determino il numero delle celle piene in foglio "TURNOA"
    righeTURNOB = Sheets("TURNOB").Range("B" & Rows.Count).End(xlUp).Row 'determino il numero delle celle piene in foglio "TURNOB"
    Set miorange = Sheets("INSERIMENTODATI").Range("d1:d" & righeINSERIMENTODATI) 'Imposto la variabile miorange con la zona piena in colonna D del foglio "INSERIMENTODATI"
    For Each cl In miorange 'Ciclo che valuta tutte le celle piene in mio range e se il valore della
        If cl.Value = "A" Or cl.Value = "B" Then                                              'cella è uguale a "A" o "B"
            cl.EntireRow.Copy Sheets(cl.Value).Range("B" & righeTURNOA + 1) 'copia l'intera riga nei relativi fogli
        End If
    Next cl
    End Sub
    
    Se qualcuno di voi mi può dare un aiuto.
    Ciao,grazie
    Ultima modifica di AntonioG; 10-05-2017 14:50  Motivo: Tag CODE per il codice !

  4. #4
    cl che variabile è ?
    ℹ️ Leggi di più su AntonioG ...

  5. #5
    giorgio61 non è in linea Novello
    Ciao,
    non so cl che variabile è, infatti l'errore nel codice mi esce su cl, ma non so cosa devo modificare.
    Ciao

  6. #6
    Anche cl è di tipo Range, devi dichiararla come le altre se hai impostato questa opzione come obbligatoria.

    Sono le basi di VBA ... vedi di leggere qualche guida ...
    ℹ️ Leggi di più su AntonioG ...

  7. #7
    giorgio61 non è in linea Novello
    Ciao,
    ho aggiunto :
    Dim CL As Range
    ma ora mi da questo errore:
    CL.EntireRow.Copy Sheets(CL.Value).Range("B" & righeTURNOA + 1)

    ciao

  8. #8
    Scusa Giorgio ma quae errore? Quella è una linea di codice non un errore...

    Cerca di essere più chiaro...
    ℹ️ Leggi di più su AntonioG ...

  9. #9
    giorgio61 non è in linea Novello
    ciao,
    ho messo un pulsante nel foglio "INSERIMENTO DATI", compilate le celle clicco sul pulsante e mi si
    apre il codice :CL.EntireRow.Copy Sheets(CL.Value).Range("righeTURNOA + 1)
    non riesco a farlo funzionare.
    ciao
    Ultima modifica di giorgio61; 10-05-2017 19:06 

  10. #10
    Ok ... ci ho tentato ... così non arriviamo da nessuna parte.

    Non si usa così il forum.

    Qui non c'è un "servizio magico" ma gente che cerca di aiutarti, se sei chiaro nel problema.

    Thread chiuso.
    ℹ️ Leggi di più su AntonioG ...

Discussione chiusa

Potrebbero interessarti anche ...

  1. Copiare riga su foglio se valore cella x
    Da oilcrovara nel forum Microsoft Word
    Risposte: 1
    Ultimo Post: 08-12-2020, 20:54
  2. Risposte: 2
    Ultimo Post: 05-08-2020, 16:53
  3. Risposte: 6
    Ultimo Post: 02-05-2015, 07:26
  4. excel - cambiare nome foglio excel in base a valore cella
    Da blackeyes nel forum Microsoft Excel
    Risposte: 11
    Ultimo Post: 29-05-2011, 11:10
  5. Copiare il valore di cella di una MSHFlexGrid
    Da dade_n nel forum Visual Basic 6
    Risposte: 20
    Ultimo Post: 26-07-2006, 11:55