Distribuire su N righe



  • Distribuire su N righe
    di Sbizzy data: 20/01/2015 10:34:24

    Ciao a tutti,

    allego un file in cui ho una tabella A2:C8 in cui vengono inseriti dati come in esempio (può essere che tutte le righe abbiano dei dati, mentre nell'esempio ho messo solo 3 righe completate). Nelle colonne A e B ho delle informazioni (DATI1 e DATI2), mentre nella cella C ho indicato le quantità relative a quelle info. L'obbiettivo è creare una macro che, considerando N la quantità della cella C2, crei N righe che riportino le informazioni di A2 e C2, poi faccia la stessa cosa con la riga 3 e cosi via finchè non trova una riga vuota oppure arrivi alla riga 8 (compresa).

    E' fattibile??

    Grazie!


  • copia di controls da frame a frame
    di marinoernestoch data: 20/01/2015 10:50:17

    Buon giorno.
    Sto cercando di costruire una USERFORM in base ad una form ,per l'appunto, di base e di aggiungere text, label ecc.
    Tutto funziona correttamente tranne quando cerco di copiare nella nuoca mappa una frame che contiene diversi controls.
    Ho pensato allora di generare nella userform nuova una frame e di copiarvi i vari controls dalla frame originaria.
    Anche qui, la costruzione è OK, ma quando arrivo a copiarli, mi becco un bel errore.
    Sotto c'è il pezzo incriminato, ma l'allegato foglio contiene le istruzioni essenziali per ottenere questo form duplicato nelle quali ho l'errore. (Il tutto sarà poi inserito in un progetto più ampio, già stato oggetto di discussione -Mappa dinamica- vero Vecchio Frac! ).
    Ringrazio che mi può correggere l'errore.

     
    '<<<<<<< istruzioni base con errore
    '<<<<<<< in alternativa potrei copiare tutta la frame nella nuova mappa,
    '<<<<<<< ma mi da errore sul .setfocus della frame
    
    For Each controlli In frm_base.frame_comandi.Controls
            nome = controlli.Name
           ' anche il set mi da errore. perchè?   '<<<<<<<<<<<<<<<<<<<<<<<< HELP
           ' Set x_copia =  ThisWorkbook.VBProject.VBComponents("frm_base").Designer.Controls("frame_comandi")
           ' l'istruzione base  'WITH ....' gives me error '<<<<<<<<<<<<<<<<<<<<<<<< HELP
            With ThisWorkbook.VBProject.VBComponents("frm_base").Designer.Controls("frame_comandi")
                 .Controls(nome).SetFocus  '<<<<<<<<<<<<<<<<<<<<<<<< HELP
                 .Controls(nome).Copy
            End With
           .Paste
    Next controlli
    
    



  • di scossa data: 20/01/2015 11:04:00

    @marinoernestoch: non accodarti a discussioni di altri.

    P.S.: potresti cortesemente usare termini "standard", non riesco mai a capire cosa intendi con "mappa".


    scossa's web site
    Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno.
    Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)



  • di Mister_x (utente non iscritto) data: 20/01/2015 11:39:23

    ciao Sbizzy

    una sub() per fare il lavoro da come ho capito in base alla tua spiegazione
    da inserire nel foglio di utilizzo

    ciao

     
    Option Explicit
    Sub Elabora()
    Dim ValA, ValB, ValC As Variant
    Dim i, Nriga As Long
    Range("F2:G10000").ClearContents
    Nriga = 2
    For Each ValC In Range("C2:C8")
     If ValC  <  1 Then Exit For
     ValA = Cells(ValC.Row, 1)
     ValB = Cells(ValC.Row, 2)
     For i = 1 To ValC
       Cells(Nriga, "F") = ValA
       Cells(Nriga, "G") = ValB
       Nriga = Nriga + 1
     Next
    Next
    End Sub
    






  • di Sbizzy data: 20/01/2015 12:48:09

    Grande Mister_x!!! Funziona perfettamente.

    Ciao.