Condividi:        

RICERCA, TROVA E ORDINA

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

RICERCA, TROVA E ORDINA

Postdi cd7019 » 22/01/14 15:21

Ciao,

Vorrei nascondere le celle che CONTENGONO i caratteri della cella D3 (*D3*), però non mi funziona.

Codice: Seleziona tutto
For i = 10 To 20
    If Cells(i, 1) = "*" & Cells(3, 4) & "*" Then Rows(i).EntireRow.Hidden = True 
Next i

************************************************************************************************************************************
C' è un modo x trovare l'ultima riga non vuota di un intervallo oltre il FOR NEXT?
Codice: Seleziona tutto
NRF = 0
For J1 = 1 To 22
      NR = Cells(Rows.Count, J1).End(xlUp).Row: If NR > NRF Then NRF = NR
Next J1


listato che non funziona: NR = Worksheets("Foglio1").Range("A10:E20").End(xlUp).Row ' CON + COLONNE

************************************************************************************************************************************
Se volessi ordinare in modo crescente 6 colonne come posso fare?
il comando ordina consente solo 3 colonne.

Range("A1:F30").Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1") _
, Order2:=xlAscending, Key3:=Range("C1"), Order3:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

Grazie.
EXCEL 2003
cd7019
Utente Senior
 
Post: 232
Iscritto il: 26/06/12 21:38

Sponsor
 

Re: RICERCA, TROVA E ORDINA

Postdi Anthony47 » 23/01/14 02:11

1) L' operatore "=" restituisce un risultato True se i due termini sono "uguali", senza l' uso di caratteri jolly (l' Asterisco vale per se stesso, non per "qualsiasi altro carattere")
Potrai invece usare l' operatore like
Codice: Seleziona tutto
For i = 10 To 20
    If Cells(i, 1) Like "*" & Cells(3, 4) & "*" Then Rows(i).EntireRow.Hidden = True
Next i


2) Per calcolare l' ultima riga occuata nel tuo range puoi usare questa istruzione:
Codice: Seleziona tutto
LastRange = Evaluate("=Max(if(A10:E20<>"""",row(A10:E20),""""))")


3) Per ordinare su piu' di tre colonne su versioni precedenti a XL2007 segui i suggerimenti Microsoft: http://support.microsoft.com/kb/268007

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: RICERCA, TROVA E ORDINA

Postdi cd7019 » 26/01/14 17:40

Ciao,

è possibile inserire un intervallo "generico"
intervallo FISSO: A10:E20
LastRange = Evaluate("=Max(if(A10:E20<>"""",row(A10:E20),""""))")

intervallo "GENERICO":
NR=1:NC=100
RANGE(CELLS(NR,10),CELLS(NR,NC))

LastRange = Evaluate("=Max(if( ....<>"""",row(...),""""))")

Grazie
EXCEL 2003
cd7019
Utente Senior
 
Post: 232
Iscritto il: 26/06/12 21:38

Re: RICERCA, TROVA E ORDINA

Postdi Anthony47 » 28/01/14 01:28

Premesso che se il tuo intervallo e' costituito da una sola riga [come risulta da una definizione del tipo Range(Cells(NR, 10), Cells(NR, NC))] allora il LastUsed non puo' che essere pari a NR, in generale puoi usare una formulazione del tipo
Codice: Seleziona tutto
NumR = 10: NumC = 100    '<< Esempio
myRadd = Range("F5").Resize(NumR, NumC).Address
LastRange = Evaluate("=Max(if(" & myRadd & "<>"""",row(" & myRadd & "),""""))")

Questa restituira' quale e' l' ultima riga usata nell' intervallo che parte da F5 e si estende per "NumR" righe (10) e "NumC" colonne (100).

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19221
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: RICERCA, TROVA E ORDINA

Postdi cd7019 » 28/01/14 08:45

Grazie mille.

Funziona perfettamente.

ciao
EXCEL 2003
cd7019
Utente Senior
 
Post: 232
Iscritto il: 26/06/12 21:38


Torna a Applicazioni Office Windows


Topic correlati a "RICERCA, TROVA E ORDINA":


Chi c’è in linea

Visitano il forum: Nessuno e 44 ospiti