Pagina 1 di 1

Copia celle in modo alternato

Inviato: sabato 27 luglio 2019, 19:11
da paoluccimax
Salve
avrei necessita di copiare le prime e incollare delle celle in modo alternato
Esempio:
cella:
B7 - H7
B8 - H8
B9 - H9
B10 - H10
B11 - H1
e copiarle di fianco in L4
Successivamente prendere le prossime cinque

B23 - H23
B24 - H24
B25 - H25
B26 - H26
B27 - H27

e incollarle in L9
e cosi via.

Esiste un modo per fare tutto cio in automatico? Come sempre ringrazio in anticipo a chi vorra aiutarmi

PS. Dimenticavo, se in un intervallo di riga (B26 - H26) mancano dei dati, dovra passare alla riga successiva, ma sempre 5 intervalli dovra' prendere in considerazione.

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 9:35
da patel
prova con questa macro che cerca la riga con Show: scende di 5 righe, copia il range di 5 righe nella colonna L e continua a copiare fino a che trova show:

Codice: Seleziona tutto

Sub trasp1
dim oFound as object
Sh1 = ThisComponent.Sheets(0)
oDescriptor = Sh1.createSearchDescriptor()
tofind ="Show:"
drow = 6
With oDescriptor
  .SearchString = tofind
  .SearchWords = true
  .SearchCaseSensitive = False    
End With
oFound = Sh1.findFirst(oDescriptor)
Do While Not IsNull(oFound)   
   frow = oFound.CellAddress.Row 
   Range = Sh1.getCellRangeByPosition(1, frow+5,  7, fRow+9 ).getDataArray
   dRange  = Sh1.getCellRangeByPosition(11, drow,  17, dRow+4 )
   dRange.setDataArray(Range)
   oFound = Sh1.findNext( oFound, oDescriptor)
   drow =drow+5
Loop
End Sub

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 11:43
da paoluccimax
Grazie del tuo aiuto, ma sono veramente agli inizi e non so dove scrivere questo codice.

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 14:52
da gioh66
Una possibile soluzione con formule, eliminando però le righe vuote, potrebbe essere quella di creare una colonna d'appoggio per ricavare i numeri di riga che ci interessano. Per farlo in J7 (o dove preferisci) metti questa formula, da tirare in basso

Codice: Seleziona tutto

=SE(RESTO(CONTA.VUOTE($A$7:A7)-1;10)+1>5;"";RIF.RIGA(A1))
Poi per creare la tabella riepilogativa, metti (nell'esempio che allego l'ho messa in L21)

Codice: Seleziona tutto

=SE(VAL.ERRORE(INDICE($B$7:$H$224;PICCOLO($J$7:$J$224;RIF.RIGA(A1));COLONNE($L$1:L1)));"";INDICE($B$7:$H$224;PICCOLO($J$7:$J$224;RIF.RIGA(A1));COLONNE($L$1:L1))) 
e tira a destra e in basso.
Ps.: se non vuoi vedere la colonna d'appoggio puoi nasconderla o spostarla più a destra sul foglio. In quest'ultimo caso devi però correggere il range della funzione PICCOLO.

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 17:25
da paoluccimax
Grazie infinite del tuo aiuto, e scusa la mia ignoranza, ma se in una riga dovesse trovare solo alcuni valori, come e' possibile fargli capire che deve considerare la riga dopo?
Un'altra domanda, che puoi leggere da un'altro topic che ho creato " viewtopic.php?f=9&t=9999"
Grazie ancora infinite per il tuo aiuto!

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 17:34
da patel
paoluccimax ha scritto:Grazie del tuo aiuto, ma sono veramente agli inizi e non so dove scrivere questo codice.
http://professoressa.altervista.org/Dis ... re_OOo.pdf

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 17:34
da paoluccimax
prova ad osservare nella riga 53 , ti allego nuovamente il file

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 18:33
da gioh66
Con le formule la vedo dura. :knock:

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 19:11
da paoluccimax
Possiamo sentirci in privato per capire se c'e' la possibilita di darmi una mano nel completare questo file?
Grazie

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 19:58
da gioh66
Tutto l'aiuto che posso e/o so darti te lo do qui, anche perchè, nello spirito del forum, l'eventuale soluzione potrebbe essere d'aiuto a qualche altro utente con problemi simili.

Re: Copia celle in modo alternato

Inviato: domenica 28 luglio 2019, 20:16
da paoluccimax
Certo sono d'accordo, ma secondo me avremmo necessita di confrontarci per capire meglio la problematica in evidenza. Comunque come credi, se puoi aiutarmmi cosi, ben venga!

Re: Copia celle in modo alternato

Inviato: lunedì 29 luglio 2019, 9:36
da patel
se hai questo tipo di problematiche ti conviene iniziare a prendere in considerazione le macro

Re: Copia celle in modo alternato

Inviato: lunedì 29 luglio 2019, 13:07
da gioh66
patel ha scritto:se hai questo tipo di problematiche ti conviene iniziare a prendere in considerazione le macro
Lo credo anch'io, ho provato con le formule ma non ci cavo un ragno dal buco...ma con le macro sono a 0--- :mrgreen:

Re: Copia celle in modo alternato

Inviato: lunedì 29 luglio 2019, 16:48
da Gaetanopr
Premetto che anch'io opterei per una macro, comunque prova il file in allegato le colonne in giallo sono di appoggio e possono essere nascoste, le formule da L4 a seguire sono matriciali.
Le formule delle due colonne di appoggio possono essere unite in una sola e usare solo una colonna in questo modo

Codice: Seleziona tutto

=SE(SE(CONTA.VALORI(B7:H7)=7;CONTA.SE(A$2:A7;"Show:");"")<>"";CONTA.SE(K$7:K7;K7);"")
da mettere nella cella J7 e trascinare in basso

PS: Controlla bene se funziona a dovere, alcune celle alla fine riportano lo ZERO ma questo si può togliere