[Risolto] Cella appartenente a NamedRange
[Risolto] Cella appartenente a NamedRange
Ciao. Come è possibile conoscere il nome di un range predefinito a cui appartiene la cella selezionata?
Ultima modifica di giuserpe il martedì 5 settembre 2017, 11:35, modificato 3 volte in totale.
LibreOffice fresh su Windows e Linux
-
vladboscaneanu
- Volontario

- Messaggi: 380
- Iscritto il: martedì 22 ottobre 2013, 1:35
Re: Cella appartenente a NamedRange
Prima si deve dichiarare il range,poi si verificano le eventuale coincidenze di posizionamento.
Una piccola idea :
Una piccola idea :
Codice: Seleziona tutto
'vladboscaneanu@gmail.com
'-------------------------------------------------------
'Abbiamo un range,ad esempio A1:B10
'e una cella.
'Si deve controllare se la cella appartine al nostro range
'Cambiate il nome del Foglio1 con il vostro
'--------------------------------------------------------
Function Cella_o_Range(nome as string)
Cella_o_Range=ThisComponent.Sheets.GetByName("Foglio1").GetCellRangeByName(nome)
End Function
'
Sub Verifica_Cella
MiaCella = InputBox("Inserisce il nome della cella :")
IF Cella_o_Range(MiaCella).GetCellAddress().Column >= (Cella_o_Range("A1:B10").getRangeAddress().StartColumn) AND _
Cella_o_Range(MiaCella).GetCellAddress().Column <= Cella_o_Range("A1:B10").getRangeAddress().EndColumn Then
IF Cella_o_Range(MiaCella).getCellAddress().Row >= Cella_o_Range("A1:B10").getRangeAddress().StartRow AND _
Cella_o_Range(MiaCella).getCellAddress().Row <= Cella_o_Range("A1:B10").getRangeAddress().EndRow Then
MsgBox "La cella apartiene al range",64,"Evviva!!!"
End If
Else
MsgBox "La cella non apartiene al range",48,"Oh,no!"
End If
End Sub- Allegati
-
- cella.ods
- (9.78 KiB) Scaricato 112 volte
LibreOffice ultima versione su Windows 10
Re: Cella appartenente a NamedRange
altro modo
Codice: Seleziona tutto
sub intersect
sh = ThisComponent.Sheets.GetByName("Foglio1")
MiaCella = InputBox("Inserisce il nome della cella :")
rng = sh.getCellRangeByName(miacella)
range2 = rng.queryintersection(sh.GetCellRangeByName("A1:B10").rangeaddress())
If range2.RangeAddressesAsString = "" Then
MsgBox "La cella non appartiene al range A1:B10",48,"Oh,no!"
Else
MsgBox "La cella appartiene al range A1:B10",64,"Evviva!!!"
end if
end sub-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Re: Cella appartenente a NamedRange
La soluzione è interessante, ma il mio problema è molto più generico, visto che la cella in questione può appartenere contemporaneamente anche a più ranges e mi piacerebbe se si riuscisse a risalire ai loro nomi.
Ragionando un po' dovrebbe comunque tornarmi utile.
Grazie mille.
Ragionando un po' dovrebbe comunque tornarmi utile.
Grazie mille.
LibreOffice fresh su Windows e Linux
