Condividi:        

excel 2000

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 2000

Postdi trittico69 » 12/04/10 07:46

Si puo modificare questo codice che funzioni su excel 2000
Il problema che da è che colora la riga del nome cercato solo quando chiudo la finestra “trova”

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Cells.Interior.ColorIndex = xlColorIndexNone
ActiveCell.EntireRow.Interior.ColorIndex = 50
End Sub


E poi è possibile far si che i nomi della rubrica in questione, che si aggiornano in rete, in automatico all’apertura del file, vengano visualizzati in un foglio (ma solo i cambiamenti) possibilmente anche i nomi che vengono cancellati

E poi ancora quando cerco un nome e lo trovo il cursore sparisce dalla finestra trova e quindi per cercare il nome successivo devo ricliccare con il muse nella finestra trova……si puo fare che resta sempre li in modo che devo solo cancellare(comodissimo se si potesse cancellare tutto il nome schiacciando un tasto una sola volta) il vecchio nome senza cliccare ogni volta con il muse?
Chiedo tutto questo perché il mio lavoro consiste di cercare circa un migliaio di nomi al giorno e quindi meno passaggi faccio piu tempo recupero
Se si puo fare tutto questo che funzioni sia per excel 2000 che 2003
Grazie!
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Sponsor
 

Re: excel 2000

Postdi Flash30005 » 12/04/10 08:31

In un modulo inserisci questa macro
Codice: Seleziona tutto
Sub ColoraRigheSE()
    Nome1 = UCase(Range("I1").Value)  '<<<< "I1"   cella che contiene il nome da trovare
For Each rw In Worksheets(1).Cells(1, 1).CurrentRegion.Rows
    rw.Interior.ColorIndex = xlNone
    Nome2 = UCase(rw.Cells(1, 1).Value)
    If Nome1 = Nome2 Then rw.Interior.ColorIndex = 50
Next
End Sub

Poi con un pulsante puoi richiamarla oppure
Metterai nel codice del foglio Worksheets (non modulo)
questo codice
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$I$1" Then Exit Sub
Call ColoraRigheSE
End Sub

Dove "I1" è la cella che contiene il nome da trovare

Altrimenti ti invio questo file


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 12/04/10 13:52

Il cursore mi dovrebbe andare sul nome e colorare solo dove si trova il cursore… poi se rischiaccio enter ,per vede se c’è un altro nome ugual,e allora mi deve colorare la riga del nome uguale successivo e la riga del primo nome deve ridiventare bianca…..ovviamente la cella dove scrivo il nome da cercare deve essere sempre a portata di mano e permettermi di schiacciare enter più volte senza che devo ricliccarci sopra per poter rischiacciare enter….insomma deve funzionare come la funzione che ha excel per trovare il nome con la differenza che mi deve colorare la riga che trova
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 12/04/10 16:02

Questo colorerà tutte le righe con il nome della cella cliccata (è possibile modificare anche con enter)
nel modulo metterai questo:
Codice: Seleziona tutto
Public Nome1 As String
Sub ColoraRigheSE()
For Each rw In Worksheets(1).Cells(1, 1).CurrentRegion.Rows
    rw.Interior.ColorIndex = xlNone
    Nome2 = UCase(rw.Cells(1, 1).Value)
    If Nome1 = Nome2 Then rw.Interior.ColorIndex = 50
Next
End Sub


Nel codice vba del foglio (togli la precendente macro) e insierirai questo
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Nome1 = UCase(Target)
Call ColoraRigheSE
End Sub

Che non attende la variazione di valore ma solo il click del mouse sul nome, il resto avviene da sé.
ecco il file

Fai sapere se va bene

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 12/04/10 17:39

il tuo file funziona ma se agguingo altri nomi non mi li colora
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 12/04/10 19:12

Sei sicuro?
io ho aggiunto altri nomi, nella colonna "A", e uscendo dalla cella e ricliccandoci sopra si colorano tutte le righe che hanno nella colonna "A" quel nome

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 12/04/10 20:59

sulla mia rubrica non funziona forse cambia qualche coordinata...se mi dai l'indirizzo email ti spedisco la mia rubrica o se mi dici passo passo come metterla su rapidshare la metto li...
grazie!
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 12/04/10 21:11

Sicuramente è così del resto, fino ad ora, non hai fatto cenno a nessuna delle tue coordinate quindi la macro funzionerà solo con il file da me inviato o con tutti quei file dove il nome si trova nella colonna A.
A questo punto dovrai inviarmi la tua rubrica.
Ti consiglio di metterla su rapidshare e inviare il link di Rapid in un MP al mio indirizzo.
Inviami anche il link per la cancellazione dal server host.
Una volta scaricato cancellerò dal server il file

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 13/04/10 00:57

non mi hai spiegato come si fa a mettere il file su rapid
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 13/04/10 08:17

Abbiamo questo topic che spiega tutto

oppure vai sul sito Rapidshare e guardi il video messo a disposizione dal server per spiegarne l'uso

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 13/04/10 11:45

fatto... il link è questo

http://rapidshare.com/files/375352293/Cartel1.xls.html



Sai dirmi perché stampando con excel quest’indirizzo che va a finire in un modulo prestampato mi da l’errore sotto?

Via Girolamo Minervini 2/R 50142 Firenze (FI)


Il pc ha WINDOWS 98 excel 2000 pentium 2 ram 128


SPOOL32 ha provocato un errore di pagina non valida nel
modulo KERNEL32.DLL in 017f:bff7b9a6.
Registri:
EAX=00000000 CS=017f EIP=bff7b9a6 EFLGS=00000246
EBX=826dfec0 SS=0187 ESP=0086fef0 EBP=0086ff10
ECX=c15b55b0 DS=0187 ESI=825df818 FS=1c57
EDX=bffc9490 ES=0187 EDI=825df770 GS=0000
Byte all'indirizzo CS:EIP:
ff 76 04 e8 13 89 ff ff 5e c2 04 00 56 8b 74 24
Immagine dello stack:
825df74c 7fabc393 825df818 825df74c 00000000 826dfec0 826dfec0 00000000 0086ff74 7fab237a 825df74c 826dfec4 005101cc 826dfec0 7fab228d 825df74c
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 13/04/10 21:09

Non capisco perché avevi nascosto le colonne A e B e inizi da C a mettere i nomi
era questo il motivo del non funzionamento
comunque prova questo file

Ciao


P.s. Per quanto riguarda il quesito stampa non saprei, bisognerebbe approfondire.
Che intendi per modulo prestampato?
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 14/04/10 00:19

se viene cancellato un nome, quindi resta una riga vuota, al disotto della riga vuota i nomi non vengono più evidenziati...potresti sistemarlo che anche se lascio una riga vuota, senza eliminarla, funzioni lo stesso?

e poi è possibile cancellare il nome, che inserisco in "trova", schiacciando una sola volta il taso "cancella" sopra il tasto "enter"?

le colonne "A" è "B" sono nascoste perchè i nomi scritti in esse vengono ricopiati nelle colonne "C" e "D" tramite formule con delle modifiche....
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 14/04/10 00:46

Modifica la macro nel modulo così
Codice: Seleziona tutto
Public Nome1, Foglio As String
Sub ColoraRigheSE()
UR = Sheets(Foglio).Range("C" & Rows.Count).End(xlUp).Row
For RR = 9 To UR
    Range("C" & RR & ":H" & RR).Interior.ColorIndex = xlNone
    Nome2 = UCase(Cells(RR, 3).Value)
    If Nome1 = Nome2 Then Range("C" & RR & ":H" & RR).Interior.ColorIndex = 50
Next
End Sub


Oppure scarica questo file

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 14/04/10 13:19

Con excel 2000 colora il nome solo dopo che hai chiuso la finestra “trova”
Con excel 2003 colora la riga solo se il nome da cerare si trova sotto la colonna “C”…. se si trova sotto la colonna “D” non colora
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 14/04/10 18:37

Beh, non avevi specificato quale delle due colonne o se tutte e due le colonne dovevano essere prese in esame
supponevo i cognomi anche perché i nomi possono essere uguali...
sostituisci la macro nel modulo così
Codice: Seleziona tutto
Public Nome1, Foglio As String
Sub ColoraRigheSE()
UR = Sheets(Foglio).Range("C" & Rows.Count).End(xlUp).Row
For RR = 9 To UR
    Range("C" & RR & ":H" & RR).Interior.ColorIndex = xlNone
    Nome2 = UCase(Cells(RR, 3).Value)
    Nome3 = UCase(Cells(RR, 4).Value)
    If Nome1 = Nome2 Or Nome1 = Nome3 Then Range("C" & RR & ":H" & RR).Interior.ColorIndex = 50
Next
End Sub


e quella nel foglio così
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
CheckArea = "C9:D65000"
If Not Application.Intersect(ActiveCell, Range(CheckArea)) Is Nothing Then
    If (Selection.Rows.Count + Selection.Columns.Count) > 2 Then Exit Sub
Nome1 = UCase(Target)
Foglio = Name
Call ColoraRigheSE
End If
End Sub


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 14/04/10 19:13

va bene....non c'è anche la possibilità di poter cancellare il nome che io inserisco in "trova" schiacciando una sola volta il tasto cancella che si trova sopra il tasto enter?
domani lo provo anche su excel 2000 e ti faccio sapere
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 14/04/10 22:34

Mi sembra che ti sei "fossilizzato" con questo Trova che usi spesso ma che serve a poco quando si utilizzano le macro
Mi domando:
quando tu usi il Trova devi digitare il nome, giusto?
allora perché non digitarlo in una apposita cella da stabilire e far funzionare la macro che poi fa tutto quello che gli diciamo di fare?
Esempio inserire un nome in C2 o altra cella, poi premi il pulsante1 che avvia la macro che colora, il pulsante2 che cancella nome e/o riga etc etc
per fare questo bisogna, però, avere delle specifiche ben definite altrimenti perdiamo solo tempo

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: excel 2000

Postdi trittico69 » 15/04/10 12:21

facciamo così...mi accontento di quello che hai fatto che è già molto.....vediamo se puoi aiutarmi in altro...sempre la stessa rubrica aggiorna i nomi e i dati, all'apertura, collegata con altri file in rete interna alla struttura dove lavoro....mi servirebbe che tutti gli aggiornamenti( insomma qualsiasi cambiamento) vengano visualizzati in un foglio, nello stesso file, che lo chiameremo "movimenti".

ho provato con excel 2000 ma non colora puoi modificarlo che funzioni anche con excel 2000?
trittico69
Utente Senior
 
Post: 497
Iscritto il: 16/08/09 18:41

Re: excel 2000

Postdi Flash30005 » 16/04/10 13:29

Per registrare i cambiamenti (solo quando un utente scrive, non all'apertura del file)
ti invio una macro di Anthony
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
CheckArea = "A1:L65000"
If Not Application.Intersect(Target, Range(CheckArea)) Is Nothing Then
    Marca
End If
End Sub

Sub Marca()
Track = "IV1"
Dim LogNum As Integer
LogNum = 500
Range(Track).Value = (Range(Track).Value + 1) Mod LogNum
Range(Track).Offset(Range(Track).Value + 1) = UCase(Environ("userName"))
Range(Track).Offset(Range(Track).Value + 1, -1) = Format(Now(), "DD/MM/YYYY hh:mm:ss")
Range(Track).Offset(Range(Track).Value + 2).Range("A1:A2").ClearContents
Range(Track).Offset(Range(Track).Value + 2, -1).Range("A1:A2").ClearContents
Application.EnableEvents = True
End Sub

da mettere sul foglio (non modulo)
Ad ogni variazione nel Range "Checkarea" verranno registrate data, ora e utente nelle colonne "UI" e "IV" (le ultime di un foglio excel 2003).

Per quanto concerne la macro non funzionante in excel 2000 proprio non saprei dirti perché non ho office 2000 e riguardando i codici mi sembrano tutti compatibili.
Dovresti dirmi se si blocca il programma oppure non "reagisce" se non reagisce significa che la macro del Worksheet_SelectionChange(ByVal Target As Range) non funziona come dovrebbe.
Prova a spostare la macro "ColoraRigheSE" dal modulo al foglio (sotto alla precedente).

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "excel 2000":


Chi c’è in linea

Visitano il forum: Nessuno e 36 ospiti