Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[calc] ricerca di celle vuote

343 views
Skip to first unread message

Roberto Montaruli

unread,
Oct 23, 2009, 4:12:49 AM10/23/09
to
Ho la necessita' di sostituire in un range di un foglio di calcolo
tutte le celle vuote con uno zero.
Ho provato la funzione cerca/sostituisci solo che non sono mica
riuscito a cercare una cella vuota.

Ho anche provato a cercare le celle vuote per regular expression
inserendo ^$ nel campo di ricerca ma non me le trova.

C'e' qualche modo furbo per effettuare questa sostituzione?
Altrimenti mi tocca scrivere una macro...

VITRIOL

unread,
Oct 23, 2009, 4:42:29 AM10/23/09
to
Il 23/10/2009 10.12, Roberto Montaruli ha scritto:

> Ho anche provato a cercare le celle vuote per regular expression
> inserendo ^$ nel campo di ricerca ma non me le trova.

Infatti non funziona:

http://qa.openoffice.org/issues/show_bug.cgi?id=44688

> C'e' qualche modo furbo per effettuare questa sostituzione?

Sorry, ma di modi furbi non ne conosco...

--
news:it-alt.comp.software.openoffice : Il newsgroup dedicato a
OpenOffice.org, la suite open source di applicazioni per ufficio.
Scarica "OpenOffice.org 3.0 Soluzioni a raccolta", molto pi� di semplici
FAQ! http://it.openoffice.org/doc/manuali/

Roberto Montaruli

unread,
Oct 23, 2009, 5:39:15 AM10/23/09
to
On 23 Ott, 10:42, VITRIOL <vitriol_vitriolTOGL...@katamail.com> wrote:
> Il 23/10/2009 10.12, Roberto Montaruli ha scritto:
>
> > Ho anche provato a cercare le celle vuote per regular expression
> > inserendo ^$ nel campo di ricerca ma non me le trova.
>
> Infatti non funziona:
>
> http://qa.openoffice.org/issues/show_bug.cgi?id=44688
>
> > C'e' qualche modo furbo per effettuare questa sostituzione?
>
> Sorry, ma di modi furbi non ne conosco...
>

Allora proseguo con la macro che e' appena arrivata alla riga 1000 e
deve passare 15000 e passa righe...

Spero che finisca entro stasera :-(

pablo

unread,
Oct 23, 2009, 6:35:02 AM10/23/09
to


Non so se hai già finito cmq questa dovrebbe fare il lavoro molto ma
molto più rapidamente
(ovviamente se decidi di usarla sarai il solo responsabile per
qualunque tipo di conseguenza)

good luke!
pablo


REM ***** BASIC *****

Sub FillEmptyCells

oRngs = ThisComponent.CurrentSelection.queryEmptyCells()

For Each oRng In oRngs
oRng.getCellByPosition(0,0).FormulaLocal = "0"

nFillDirection = com.sun.star.sheet.FillDirection.TO_BOTTOM
nFillMode = com.sun.star.sheet.FillMode.SIMPLE
oRng.fillSeries(nFillDirection, nFillMode, 0, 0, 0)

nFillDirection = com.sun.star.sheet.FillDirection.TO_RIGHT
oRng.fillSeries(nFillDirection, nFillMode, nFillDateMode, fStep,
fEndValue)
Next

End Sub

Roberto Montaruli

unread,
Oct 23, 2009, 8:09:29 AM10/23/09
to
On 23 Ott, 12:35, pablo <pablok...@gmail.com> wrote:
> On 23 Ott, 11:39, Roberto Montaruli <rmontar...@gmail.com> wrote:
>
>
>
> > On 23 Ott, 10:42, VITRIOL <vitriol_vitriolTOGL...@katamail.com> wrote:
>
> > > Il 23/10/2009 10.12, Roberto Montaruli ha scritto:
>
> > > > Ho anche provato a cercare le celle vuote per regular expression
> > > > inserendo ^$ nel campo di ricerca ma non me le trova.
>
> > > Infatti non funziona:
>
> > >http://qa.openoffice.org/issues/show_bug.cgi?id=44688
>
> > > > C'e' qualche modo furbo per effettuare questa sostituzione?
>
> > > Sorry, ma di modi furbi non ne conosco...
>
> > Allora proseguo con la macro che e' appena arrivata alla riga 1000 e
> > deve passare 15000 e passa righe...
>
> > Spero che finisca entro stasera :-(
>
> Non so se hai già finito cmq questa dovrebbe fare il lavoro molto ma
> molto più rapidamente
> (ovviamente se decidi di usarla sarai il solo responsabile per
> qualunque tipo di conseguenza)

Non ho ancora finito, ma ormai proseguo con la mia di macro...
Un banale ciclo tra tutte le celle dove
if cella.string = "" then cella.value = 0

La cosa curiosa e' che non c'e' nel ciclo un equivalente del DoEvents
per non far inchiodare la macchina mentre la macro gira.
La CPU e' al 100%, pero' viene rilasciata quando altre applicazioni
lavorano.
In pratica la cpu viene usata a dovere ma la macchina non si siede...
tanto che sto tranquillamente gironzolando per la rete mentre la macro
lavora...

Savux

unread,
Oct 23, 2009, 11:13:41 AM10/23/09
to
> Ho la necessita' di sostituire in un range di un foglio di calcolo
> tutte le celle vuote con uno zero.
> Ho provato la funzione cerca/sostituisci solo che non sono mica
> riuscito a cercare una cella vuota.

Se nel tuo foglio hai solo dati, puoi fare cos�.
Supponiamo di procedere una colonna per volta, avendo Z come prima
colonna libera da usare come appoggio.
In Z1 digiti = SE(A1="";0;A1), copi e incolli sotto per tante celle
quante te ne occorrono. Quindi copi e incolli solo i valori nella colonna A.
Ripeti analogamente per le altre colonne.

Roberto Montaruli

unread,
Oct 23, 2009, 1:59:19 PM10/23/09
to
Savux ha scritto:

Trattasi di foglio con 15000 e passa righe per una cinquantina di
colonne, purtroppo.
Non si puo' trattare a mano.

martello

unread,
Oct 23, 2009, 3:08:28 PM10/23/09
to
Roberto Montaruli ha scritto:


Veramente si pu� ...
Sempre a patto che tu abbia solo dati.
In una decina di minuti risolvi il problema.
Devi giostrartela con la copia in basso e magari e un foglio di appoggio
dove inserire la funzione che ti hanno suggerito copiata per 50 volte
nella prima riga e che fa riferimento alle celle del foglio originale.

Roberto Montaruli

unread,
Oct 23, 2009, 3:42:06 PM10/23/09
to
martello ha scritto:

vabbe', ormai ho fatto... ad ogni modo ne riparliamo lunedi.
La mia macro non ha mica finito e alle 17:30 ho dovuto interrompere,
salvare e spegnere tutto.

Savux

unread,
Oct 23, 2009, 6:05:39 PM10/23/09
to
> vabbe', ormai ho fatto... ad ogni modo ne riparliamo lunedi.
> La mia macro non ha mica finito e alle 17:30 ho dovuto interrompere,
> salvare e spegnere tutto.

In A1 di Foglio2 ho digitato la formula =Foglio1.A1 (copia il contenuto
convertendo il nulla in zero), copiata e incollata per 250 colonne e
1000 righe ha impiegato meno di 10 secondi a calcolare tutto. Tu avresti
dovuto ripeterla solo 15 volte. Vedi un po' te.

Roberto Montaruli

unread,
Oct 24, 2009, 6:23:19 AM10/24/09
to
Savux ha scritto:

E pazienza.
Terro' presente per la prossima volta (tanto ho come il sospetto che
quesa elaborazione "una tantum" mi verra' richiesta ancora)

0 new messages