Vettorizzare una matrice

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
Iaco91
00lunedì 25 luglio 2016 11:21
Buongiorno a tutti!
Vi chiedo un aiuto: ho una matrice formata da 365 righe rappresentante i giorni dell'anno e 24 colonne che costituiscono le ore del giorno.
Devo fare in modo di ottenere un'unica colonna costituita da 365x24 righe dove per ogni giorno siano rappresentati i dati orari, ovvero in altre parole devo ottenere un unico vettore colonna formato dall'unione delle righe della matrice di partenza una di fila all'altra.
Allego il file excel di esempio dove sono presenti i due fogli rappresentanti cosa ho e cosa vorrei ottenere.

Riangrazio anticipatamente per la disponibilità e per l'aiuto!!!
ninai
00lunedì 25 luglio 2016 11:42
ciao
in C2:
=INDICE('Matrice consumi elettrici orari'!$C$2:$Z$366;CONFRONTA($A$2+INT((RIF.RIGA()-2)/24);'Matrice consumi elettrici orari'!$A$2:$A$366;0);CONFRONTA(B2;'Matrice consumi elettrici orari'!$C$1:$Z$1;0))
e trascini in basso


prima però devi uniformare gli orari (sono scritti diversi nei due fogli) fai un copia speciale: trasponi solo valori da B2:B25 a C1:Z1 dell'altro foglio
patel45
00lunedì 25 luglio 2016 11:58
soluzione con vba
[TESTO ::text]Sub a()
LR = Sheets(1).UsedRange.Rows.Count
rr = 2
With Sheets(1)
  Set ore = .Range("C1:Z1")
  For r = 2 To LR
    Sheets(2).Cells(rr, 1) = .Cells(r, 1)
    ore.Copy
    Sheets(2).Cells(rr, 2).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
    .Range("C" & r & ":Z" & r).Copy
    Sheets(2).Cells(rr, 3).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
    rr = rr + 24
  Next
End With
End Sub

Iaco91
00mercoledì 27 luglio 2016 22:24
Grazie mille ad entrambi! funzionano molto bene e mi avete risparmiato un sacco di tempo!   
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 03:46.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com