Aiutamici Forum
Benvenuto Ospite Cerca | Topic Attivi | Utenti | | Log In | Registra

[Excel 2007]- Macro per tabella Pivot. Opzioni
aetio
Inviato: Tuesday, June 26, 2012 3:31:28 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
ho una tabella di questo tipo (qui ho semplificato notevolmente, le tabelle reali hanno mediamente 600 righe…) in cui alcune celle quando vengono soddisfatti determinati requisiti vengono colorate.



Per ragioni statistiche devo rilevare e suddividere, per ciascuna colonna, quante celle consecutive NON sono colorate. Devo redigere una tabella come questa



in cui si legge:
-in Col.A vi sono 2 gruppi da 5 celle consecutive NON colorate, 1 da 6 celle consecutive NON colorate 1 da 7 celle consecutive NON colorate
-in Col.B vi sono 1 gruppo da 4 celle consecutive NON colorate, 3 da 6 celle consecutive NON colorate
etc.
-in Col.H vi sono 2 gruppi da 3 celle consecutive NON colorate, 1 da 4 celle consecutive NON colorate 2 da 5 celle consecutive NON colorate
Credo che ci voglia una macro che rediga una tabella Pivot, ma è un compito impossibile per le mie limitatissime conoscenze della materia…
Grazie assai, buon pomeriggio
eZio
Sponsor
Inviato: Tuesday, June 26, 2012 3:31:28 PM

 
a10n11
Inviato: Tuesday, June 26, 2012 6:04:41 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
salve
guarda il file allegato:

http://www.supershare.net/file/423095-511604075a.html

la tabella da elaborare nel foglio 1 il risultato nel foglio2

tieni conto che nel foglio1 la macro utilizza un'area di appoggio per la sua elaborazione nelle colonne J:Q
saluti
Giap

aetio
Inviato: Tuesday, June 26, 2012 10:18:28 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
rientrato solo ora :))
testato la macro: STUPENDA! Funziona a meraviglia... un gioiello... GRAZIE ASSAI ;)
Appena riesco a "isolarmi" me la gusto tutta...Lei, ora, sta già facendo il suo bel lavoro... :))))

Grazie infinite, buona serata
eZio
aetio
Inviato: Thursday, June 28, 2012 6:56:34 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
faccio una breve premessa: ormai sono parecchie le migliaia di macro che vedo in giro per la rete, ma non ce n'è UNA di numero elegante, breve e nel contempo complessa nel suo dare precise istruzioni come le tue...

Sto cercando di capire, in queste 2 macro collegate, le dinamiche con cui le istruzioni vengono impartite, ma m'intoppo :))
Domanda: se invece di una tabella di 8 colonne ne avessi una di 6, quali parametri dovrei variare? Di alcuni ne comprendo il significato, ma di altri mi sfuggono le Leggi a cui vengono sottoposti... :))
Grazie infinite, buona serata
eZio
a10n11
Inviato: Thursday, June 28, 2012 7:30:56 PM

Rank: AiutAmico

Iscritto dal : 5/29/2003
Posts: 1,694
aetio ha scritto:
Ciao,
faccio una breve premessa: ormai sono parecchie le migliaia di macro che vedo in giro per la rete, ma non ce n'è UNA di numero elegante, breve e nel contempo complessa nel suo dare precise istruzioni come le tue...

Sto cercando di capire, in queste 2 macro collegate, le dinamiche con cui le istruzioni vengono impartite, ma m'intoppo :))
Domanda: se invece di una tabella di 8 colonne ne avessi una di 6, quali parametri dovrei variare? Di alcuni ne comprendo il significato, ma di altri mi sfuggono le Leggi a cui vengono sottoposti... :))
Grazie infinite, buona serata
eZio


salve
la parte delle due macro interessate alla larghezza della tabella è nella definizione del Ciclo For

For N = 1 To 8


In base al numero di colonne della tua tabella varia il valore di 8

Tieni presente, che c'è anche un'altra porzione del codice legata al numero di colonne:

Cells(riga, 9 + N).Value = cont
If cont > 1 Then Cells(riga, 9 + N).Value = cont
ctb1 = 10
Uriga = Range("j2").CurrentRegion.Rows.Count + 1

le due righe stanno a significare che scrivono i dati a partire da colonna 10, pertanto se la tua tabella
fosse maggiore di 8 dovrai variare il valore 9.

come vedi il numero colonne condiziona parecchie righe di codice. Se le tue tabelle sono di larghezza variabile, forse converrebbe trovare un modo per creare una variabile che legga direttamente l'ampiezza della tabella.

saluti
Giap








aetio
Inviato: Thursday, June 28, 2012 10:32:56 PM

Rank: AiutAmico

Iscritto dal : 5/10/2010
Posts: 723
Ciao,
innanzi tutto GRAZIE per la consueta velocità ed estrema precisione nel soddisfare le mie richieste...

Era proprio questa seconda parte di istruzioni che mi dava problemi di comprensione... Ora ho capito.
Le mie tabelle hanno quasi tutte lo stesso numero di colonne, ma ve ne sono alcune che necessitano di variare i parametri. Ma non vorrei abusare troppo della tua estrema gentilezza nell'assecondare tutte le mie richieste...
Grazie infinite, buona serata
eZio
Utenti presenti in questo topic
Guest


Salta al Forum
Aggiunta nuovi Topic disabilitata in questo forum.
Risposte disabilitate in questo forum.
Eliminazione tuoi Post disabilitata in questo forum.
Modifica dei tuoi post disabilitata in questo forum.
Creazione Sondaggi disabilitata in questo forum.
Voto ai sondaggi disabilitato in questo forum.

Main Forum RSS : RSS

Aiutamici Theme
Powered by Yet Another Forum.net versione 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.