Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Excel Problema con Range

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

Excel Problema con Range

Postdi Statix » 08/04/09 23:23

Ciao Anthony,

ho un problema
Codice: Seleziona tutto
Sub Bari()
I = 4
On Error Resume Next
For Each Ambo In Range("S2:AA2")
Ambo.Offset(1, 0).Interior.ColorIndex = 4
Ambo.Interior.ColorIndex = 3
Range("D9:H150").Select
Selection.Find(What:=Ambo, After:=ActiveCell, LookIn:=xlValues, LookAt:=xlWhole, _
   SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
AAA = ActiveCell.Address
If ActiveCell.Address <> "$D$9" Then
ActiveCell.Interior.ColorIndex = I
Ambo.Interior.ColorIndex = 2
End If
I = I + 1
Next Ambo
Call Cagliari

End Sub


dovrei modificare in automatico il range D9:H150

cioe cambiare la cella H150 in base al valore di un altra cella A2

esempio Cella A2=25
il range D9:H25
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Sponsor
 

Re: Excel Problema con Range

Postdi Statix » 08/04/09 23:26

Dimenticavo
ho la macro elimina
che mi elimina una riga alla volta per ogni ciclo della Macro Bari
quindi H:150 dovrebbe diminuire di 1 ad ogni ciclo
altrimenti mi va in loop
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel Problema con Range

Postdi Anthony47 » 08/04/09 23:33

Resize:
Codice: Seleziona tutto
Range("D9").resize(Range("A2").value-1,4).select

L' altro problema (diminuire H150?), non mi e' chiaro: con resize tu selezioni l' area per la lunghzza scritta in A2. Comunque, in linea di massima devi farti un contatore che incrementa a ogni ciclo da sottrarre al valore di cella A2 all' interno della Resize.

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Excel Problema con Range

Postdi Statix » 08/04/09 23:39

Ciao Anthony
e il Range("D9:H150").Select
che devo modificare nella macro,
cioè ogni volta che resize mi elimina una riga,
dovrebbe diminuire anche il

Range("D9:H150").Select
in Range("D9:H149").select
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel Problema con Range

Postdi Statix » 09/04/09 00:07

al momento ho risolto aggiungendo sotto al range 150 righe tutte a 0,in modo di evitare il loop,
funziona.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel Problema con Range

Postdi Anthony47 » 09/04/09 01:28

Non ho ancora capito, perche' il resize non elimina nessuna riga, ne' lo vedo fatto all' interno della macro che hai postato.
E poi la richiesta di ridurre di 1 riga ad ogni ciclo e' in contrasto con l' altra richiesta di selezionare un numero di righe specificato in cella A2.
Fortunatamente hai trovato un bypass per cui credo che il problema non esista piu' (o Si?).

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Excel Problema con Range

Postdi Statix » 09/04/09 08:03

Ciao Anthony
al momento ho risolto il problema del loop, inserendo un range di righe tutti a 0,
Di partenza ho un range di circa 4000 estrazioni, D9:H4000
la macro
Codice: Seleziona tutto
Sub Bari()
I = 4
On Error Resume Next
For Each Ambo In Range("S2:AA2")
Ambo.Offset(1, 0).Interior.ColorIndex = 4
Ambo.Interior.ColorIndex = 3
Range("D9:H150").Select
Selection.Find(What:=Ambo, After:=ActiveCell, LookIn:=xlValues, LookAt:=xlWhole, _
   SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
AAA = ActiveCell.Address
If ActiveCell.Address <> "$D$9" Then
ActiveCell.Interior.ColorIndex = I
Ambo.Interior.ColorIndex = 2
End If
I = I + 1
Next Ambo
Call Cagliari

End Sub


mi trova i valori in un range di 150 estrazioni,
dopodiche un altra macro mi conta i ritardi ed infine un altra macro mi elimina la prima riga,

e ricomincia il ciclo,il problema nasceva quando il range D9:H4000
si riduceva a D9:140
la macro non trovando un numero sufficiente di estrazioni andava in loop,che ho risolto ingannando la macro aggiungendo in fondo alle estrazioni, delle righe a 0,il tutto adesso funziona perfettamente.
grazie
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta


Torna a Applicazioni Office Windows


Topic correlati a "Excel Problema con Range":


Chi c’è in linea

Visitano il forum: enrico43 e 9 ospiti