Pagina 1 di 1

[Risolto] Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: mercoledì 6 settembre 2023, 18:25
da Nando69
Salve a tutti. Devo riprendere un tema postato il 30 luglio scorso perchè mi servirebbe una piccola variante al riguardo. Con riferimento al file allegato,dal tabulato presente nel foglio e semplificato per l'occasione,vorrei eliminare tramite una macro il range A94-F223 ma lasciando operative (quindi presenti) le righe evidenziate col colore,vale a dire gli intervalli da A110 ad A114,da A139 ad A143,da A168 ad A172 e da A197 ad A201. Faccio notare che nelle celle A111,A114,A140,A143,A169,A172,A198 e A201 (evidenziate col verde) sono presenti delle formule. Una buona serata

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 6:54
da charlie

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 6:56
da Lanfranchi G.Luigi
Ciao.
Se il colore determina le celle da non cancellare...

Codice: Seleziona tutto

Sub cancella
Doc=ThisComponent
oSh=Doc.Sheets(0)

oCell1=oSh.getcellRangeByName("A94:F223")
Colore = oSh.getCellRangeByName("A110").CellBackColor ' <<< colore da confrontare
Colore1 = oSh.getCellRangeByName("A111").CellBackColor ' <<< colore da confrontare

for nr=Ocell1.RangeAddress.StartRow To Ocell1.RangeAddress.EndRow
	for nc=Ocell1.RangeAddress.StartColumn To Ocell1.RangeAddress.Endcolumn	
    
    	 if oSh.getCellByPosition (nc,nr).CellBackColor <> Colore and _
    	     	 oSh.getCellByPosition (nc,nr).CellBackColor <> Colore1 then oSh.getCellByPosition (nc,nr).string=""
		
    
	Next
Next
end sub
Modificato 1 volta.

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 12:20
da Nando69
Ciao Luigi,funziona perfettamente,grazie. Mi potresti gentilmente modificare il codice senza che nel foglio sia presente il colore per le celle da mantenere ? Eliminare cioè sempre il range A94-F223 e lasciando operative gli stessi intervalli di prima : da A110 ad A114,da A139 ad A143,da A168 ad A172 e da A197 ad A201. Ciao

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 14:38
da Lanfranchi G.Luigi
La soluzione sta proprio nel colore delle celle.....ti basta colorare le celle che non vuoi eliminare in modo diverso da tutte le altre.
La macro memorizza i colori delle celle da non eliminare dal colore delle celle A110 e A111.

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 15:05
da Nando69
La questione non era quella di colorare con un altra...tinta le celle che non voglio eliminare al fine di ottenere il risultato voluto. Mi serviva una variante in cui non vi fosse PROPRIO ALCUN COLORE DI NESSUN TIPO anche per quel che riguarda le celle che non voglio cancellare. Comunque grazie mille per il tempo che hai messo gentilmente a mia disposizione

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 15:42
da Lanfranchi G.Luigi
Il codice è un po "tirato per i capelli" (non mi piace programmare con numeri fissi) ma ci stà.

Codice: Seleziona tutto

Sub cancella
Doc=ThisComponent
oSh=Doc.Sheets(0)

Target = 17
Conta =0
Conta1=0

for Nr=93 to 223

  Conta = Conta +1

  if Conta1=5 then
   Conta1=0
   Target =25
  end if

  For Nc=0 to 5

    if Conta= Target and Conta1<5 then

      Target = 1
      Conta=0
      Conta1=Conta1+1
     else

      oSh.getCellByPosition (nc,nr).string=""
 
   end if

  next Nc

next Nr

end sub

Re: Eliminare determinati valori all'interno di un foglio 2a parte

Inviato: giovedì 7 settembre 2023, 16:22
da Nando69
Grazie,buona giornata. Metto [Risolto]