Login Registrati
Stai vedendo 9 articoli - dal 26 a 34 (di 34 totali)
  • Autore
    Articoli
  • #19152 Score: 0 | Risposta

    Marius44
    Moderatore
      52 pts

      Ciao

      Guarda cosa ho detto al post #18819

      E questa volta lo mantengo perchè ho la sensazione che vuoi tutto su un vassoio d'argento.

      Scusami per la fermezza. Ciao,

      Mario

      #19156 Score: 0 | Risposta

      Caro Mario ti scrivo,

      recita una canzone di Lucio Dalla.

      Tu non mi hai dato un solo compito,

      vediamo se almeno ho indovinato i problemi:

      1-devo stabilire la variabile ur che deve posizionarsi alla prima riga vuota dopo un elaborato;

      2-stabilire la seconda variabile LC che deve scrivere su una riga e non su colonna;

      3-mi hai messo fisso i dati che a e b  scrivono in colonna 5 e colonna 6.

      Detto questo tra ieri sera e questa mattina non è il sonno perso ma la

      CAPA è andata in TILT.

      Brevemente ti faccio la mia considerazione:

      per quelli come me saperne meno saperne di più,

      io personalmente ho un altro hobby,

      tu hai il tuo hobby,

      ma secondo te se esempio faccio il ragioniere e mi 

      metto a fare l'ingegnere che dici ci riuscirò?

       Morandi  canta "uno su mille ce la fa"

      e tolto UNO gli altri 999 se erano ciuchini 

      pur crescendo sempre ciuchi rimangono..

      OK Mario più di avertelo chiesto più volte non posso

      se  vuoi sistemare la macro OK a 73 anni non mi ci

      metto a studiare l'A,B,C del VBA.

      Resta sempre il mio ringraziamento per volermi a imparare.

      Cordialmente ti saluto e cmq GRAZIE

      Giorgioantonio1

       

      #19187 Score: 0 | Risposta

      vecchio frac
      Senior Moderator
        249 pts

        giorgioantonio1 ha scritto:

        se  vuoi sistemare la macro OK a 73 anni non mi ci

        metto a studiare l'A,B,C del VBA

        Ciao giorgioantonio1, non andiamo oltre con commenti poco utili e non alimentiamo flames. Mario sta dando il proprio contributo ma non è tenuto a sistemare niente. La tua età anagrafica non è un ostacolo nell'apprendimento anche per hobby (per tutti noi qui questo è un hobby), rileggi con pazienza i suoi consigli e vedi di applicare per come ti riesce: se incontri nuovi ostacoli o difficoltà nell'applicazione, siamo qui per ragionarvi e ridiscutere insieme, ma per favore non abbiamo bisogno di paternali, saggi consigli o lezioni di vita, perchè non è lo scopo di questo forum. Grazie.

        #19289 Score: 0 | Risposta

        Saluti a Mario e vecchio frac, sinceri.

        Lungi da me aver dato l'impressione di fare dare paternali.

        Se è questa l'impressione cortesemente accettate le mie scuse.

        Non ho voluto nascondermi dietro l'età per essere aiutato.

        ASSOLUTAMENTE

        Mi siete sempre venuto incontro a risolvere richieste

        e detto che so che non siete obbligati ad esaudire le mie richieste.

        Ho capito che Mario mi vuole aiutare volevo solo dire 

        ammesso che riesca nell'impresa, se non faccio pratica continua

        è difficile ricordarsi di quanto avrei imparato in questo momento

        Questo è tutto il succo del mio discorso.

        Tengo a precisare che mi avete aiutato, proprio Mario,

        di tante altre cose...

        Frac puoi cancellare il mio precedente?

        E ti ringrazio, 

        Saluti a entrambi accettate un fumoso caffè.

        #19291 Score: 0 | Risposta

        vecchio frac
        Senior Moderator
          249 pts

          Il caffè (ma anche una bella birra) sono sempre cose molto gradite 

          Non preoccuparti, non pensiamoci più e andiamo avanti (tempo e disponibilità permettendo).

          #19292 Score: 0 | Risposta

          Marius44
          Moderatore
            52 pts

            Salve a tutti

            In questo Forum non c'è (almeno credo) ma in altro Forum è in bella evidenza la mia età.

            Fra l'altro faccio notare che le cifre dopo il mio nome latinizzato non si riferiscono al numero di scarpe ma al mio anno di nascita. Come si può notare SONO IL PIU' VECCHIO ma è un aggettivo che non mi piace e dico che sono quello che ha "qualche anno di esperienza in più". 

            Ciò detto, se talvolta mi atteggio a "duro" è perchè vorrei che quello che io, da autodidatta, ho imparato con tanta fatica servisse per far imparare ad altri a muoversi nei meandri di Excel e VBA.

            Adesso basta altrimenti divento prolisso.

            Sempre se ho capito bene la richiesta, occorre impostare dei cicli che spazzolino per colonna e per riga tutta la tabella e, una volta individuata la cella cercata (quella non vuota) esegua altro ciclo per contare i numeri 1 presenti e le celle vuote.

            ATTENZIONE: è necessario inserire una x nella cella dell'ultima riga e della colonna appresso all'ultima (vedi esempio). Questo per far calcolare uc (ultima colonna) a VBA. Si potrebbe fare in tanti altri modi ma è meglio non complicarsi la vita.

            Questo il codice 

            `Sub TutteColonneFinale()
            'individuo l'ultima cella piena della colonna A
            ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
            'individuo l'ultima cella piena dell'ultima riga
            uc = ActiveSheet.Cells(ur, Columns.Count).End(xlToLeft).Column
            
            For k = 5 To uc Step 3            'ciclo per colonne
              For i = ur To 1 Step -1         'ciclo a ritroso
                If Cells(i, k) <> "" Then     'se una cella NON è vuota
                  For j = i + 1 To ur           'ciclo da quella cella alla fine
                    If Cells(j, k - 1) = 1 Then a = a + 1 'conto gli 1
                    If Cells(j, k) = "" Then b = b + 1 'conto le vuote
                  Next j
                  'scrivo i dati e passo alla colonna successiva
                  Cells(ur + 2, k) = a        ' <<<<<<<<<<<< da sistemare in ur+1
                  Cells(ur + 2, k + 1) = b    ' <<<<<<<<<<<< da sistemare in ur+1
                  a = 0: b = 0
                  Exit For
                End If
              Next i
            Next k
            End Sub
            `

            Fai sapere. Restiamo d'accordo per il caffè. Ciao,

            Mario

             

            #19300 Score: 0 | Risposta

            vecchio frac
            Senior Moderator
              249 pts

              Marius44 ha scritto:

              SONO IL PIU' VECCHIO

              Supermario ha ragione, ma non cambio il mio nick 😛

              #19309 Score: 0 | Risposta

              Ciao Mario,

              solo per farti fare due anche tre risate

              da range 6 e fino a y1 ho fatto una aggiunta per collocare le x.

              Il tutto funziona perfettamente (consentimi ognuno usa la sua tecnica)

              Come per dire di più non so .Ciao

              Sub TutteColonneFinale()
              Dim ur As Long
              Dim uc As Integer, k As Integer, j As Integer, i As Integer, a As Integer, b As Integer
              'individuo l'ultima cella piena della colonna A
              ur = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
              'individuo l'ultima cella piena dell'ultima riga
              uc = ActiveSheet.Cells(ur, Columns.Count).End(xlToLeft).Column
              Dim y1 As Integer
              Range("A6").Select
              ActiveCell.Select
              Selection.End(xlDown).Select 'scende all'ultimo rigo pieno
              ActiveCell.Offset(1, 0).Range("A1").Select 'scende di una cella
              ActiveCell.Rows("1:2").EntireRow.Select 'cancella per intero 2 righe
              Selection.ClearContents
              ActiveCell.Offset(-1, 0).Range("A1").Select 'sale alla prima riga vuota
              ActiveCell.FormulaR1C1 = "x" 'scrive la x
              ActiveCell.Offset(0, 6).Range("A1").Select 'si sposta di 6 celle a dx
              For y1 = 1 To 90 Step 3
              ActiveCell.FormulaR1C1 = "x" 'mette la x per le celle utili
              Next y1

              For k = 5 To uc Step 3 'ciclo per colonne
              For i = ur To 1 Step -1 'ciclo a ritroso
              If Cells(i, k) <> "" Then 'se una cella NON è vuota
              For j = i + 1 To ur 'ciclo da quella cella alla fine
              If Cells(j, k - 1) = 1 Then a = a + 1 'conto gli 1
              If Cells(j, k) = "" Then b = b + 1 'conto le vuote
              Next j
              'scrivo i dati e passo alla colonna successiva
              Cells(ur + 1, k) = a ' <<<<<<<<<<<< da sistemare in ur+1
              Cells(ur + 1, k + 1) = b - 1 ' <<<<<<<<<<<< da sistemare in ur+1
              a = 0: b = 0
              Exit For
              End If
              Next i
              Next k
              End Sub

              #19314 Score: 0 | Risposta

              Marius44
              Moderatore
                52 pts

                Ciao

                Come vedi che anche i "vecchietti" se s'impegnano ottengono il risultato     

                Ottimo lavoro. Ciao,

                Mario

              Login Registrati
              Stai vedendo 9 articoli - dal 26 a 34 (di 34 totali)
              Rispondi a: calcolare in colonna
              Gli allegati sono permessi solo ad utenti REGISTRATI
              Le tue informazioni: