Condividi:        

rubrica telefonica

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

Re: rubrica telefonica

Postdi raimea » 24/07/10 18:40

finalmente ce lo fatta... ;)
questa la macro
Codice: Seleziona tutto
Sub cognomebox()

Range("e:e").Select
crit = InputBox(" cognome che inizia con ?") & "*"
Selection.AutoFilter Field:=1, Criteria1:=crit, Operator:=xlAnd
Range("b1").Select

End Sub

alla prossima
la rubrica ora e' alla vers 3.3...
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Sponsor
 

Re: rubrica telefonica

Postdi raimea » 24/07/10 22:00

con questa istruzione il filtro mi si posiziona in automatico in cella E1

Codice: Seleziona tutto
Sub cognomebox()

ActiveSheet.Unprotect

Range("e:e").Select
crit = InputBox(" COGNOME che inizia con ?", Title:="Cerca Cognome") & "*"
Selection.AutoFilter Field:=1, Criteria1:=crit, Operator:=xlAnd
Range("d1").Select

End Sub


come posso dirle di posizionarsi dalla E4 ?
cosicche' possa leggere cosa c'e nelle righe 2 e 3...
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi Anthony47 » 25/07/10 11:21

Togli il filtro se presente (in modo che non ci sia la freccina in E1), poi modifica in
Codice: Seleziona tutto
Range("e3:e10000").Select

Se pensi di avere piu' di 10mila righe cambia di conseguenza.

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

rubrica telefonica - che cerca in "note"

Postdi raimea » 25/07/10 12:10

ok grazie... :P
era poi cosi semplice... ( a saperlo xro..)
ora sono alla vers 3.4

sto tentando di creare una maschera "userform" ma.... mi sa che qui
sono un po troppo oltre x i miei livelli. :undecided:
x ora continuo a leggere come fare.

http://rapidshare.com/files/408951029/rubrica.zip
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi raimea » 26/07/10 18:03

inputbox si/ no

vorrei far girare la macro che "cancella", solo se
nell'imput box scrivo SI

ho provato questo ma mi cancella sempre tutto.... :evil:
sapete dirmi dove cosa devo aggiungere ?

Codice: Seleziona tutto
Sub cancella()

    ActiveSheet.Unprotect
   
    Dim risposta As String
risposta = InputBox("Cancella rubrica", "Vuoi cancellare la rubrica ?", "no")
   
    If (risposta = "no") Then 'codice che gestisce la risposta dell’utente diversa da una stringa vuota


 
Else 'codice che gestisce il clic sul pulsante Annulla

End If
   
   
    ActiveWindow.SmallScroll Down:=-12
    Range("E4:V1003").Select
    Selection.ClearContents
   
   
    Range("e2").Select
    ActiveCell.FormulaR1C1 = "INSERIMENTO BLOCCATO"
    Range("e2").Select
    Selection.Font.Bold = True
    With Selection.Interior
        .ColorIndex = 3
        .Pattern = xlSolid
    End With
    Range("f2").Select
    With Selection.Interior
        .ColorIndex = 3
        .Pattern = xlSolid
    End With
   
    Range("D3").Select
   
   
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingColumns:=True, AllowFormattingRows:=True
End Sub
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi Anthony47 » 26/07/10 19:48

Codice: Seleziona tutto
scelta = MsgBox(Prompt:="Posso cancellare la rubrica? ", Buttons:=vbYesNo)
    If scelta = 6 Then    '6 = SI; 7=No
'..
'istruzioni per cancellare
'..
End If
'Qui continua senza aver cancellato

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

Re: rubrica telefonica

Postdi raimea » 26/07/10 20:36

Grazie
come potete capire sono un autodidatta
e voi gli unici OTTIMI insegnanti che ho... :P
per correttezza riporto la macro completa

Codice: Seleziona tutto
Sub cancella()

    ActiveSheet.Unprotect
   
   
scelta = MsgBox(Prompt:="Posso cancellare la rubrica ? ", Buttons:=vbYesNo, _
Title:="Stai cancellando la tua Rubrica")
If scelta = 6 Then          '6 = SI; 7=No

                        'istruzioni per cancellare = SI

ActiveWindow.SmallScroll Down:=-12
    Range("E4:V1003").Select
    Selection.ClearContents
   
   
    Range("e2").Select
    ActiveCell.FormulaR1C1 = "INSERIMENTO BLOCCATO"
    Range("e2").Select
    Selection.Font.Bold = True
    With Selection.Interior
        .ColorIndex = 3
        .Pattern = xlSolid
    End With
    Range("f2").Select
    With Selection.Interior
        .ColorIndex = 3
        .Pattern = xlSolid
    End With
   
    Range("D3").Select
   
   
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingColumns:=True, AllowFormattingRows:=True


'..
End If
             'Qui continua senza aver cancellato

Range("D3").Select
   
   End Sub
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

rubrica telefonica - che cerca in "note"

Postdi raimea » 27/07/10 06:07

Maiuscole - minuscole
questa parte di macro "cerca" , trova un nome anche scrivendone solo una parte di esso
ES. se scrivo "oss" mi trova giustamente (come voglio), anche Rossi.

Codice: Seleziona tutto
RR = Foglio1.Range("E" & Rows.Count).End(xlUp).Row
    Foglio2.Range("C5:t" & RR + 1).ClearContents
    CC = Foglio2.Range("u4").End(xlToLeft).Column
    If CC < 3 Then
        MsgBox "Inserire un dato da cercare sulla riga gialla", _
        Title:="NON hai compilato nessun campo Giallo"
        [C4].Select
       
        ActiveWindow.DisplayGridlines = False
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingColumns:=True, AllowFormattingRows:=True
       
        Exit Sub
    End If
    Riga = 5
    For J = 4 To RR
        Trovato = InStr(1, Foglio1.Cells(J, CC + 2), Foglio2.Cells(4, CC))
        If Trovato > 0 Then
Foglio1.Cells(J, 5).Resize(1, 18).Copy
Foglio2.Cells(Riga, 3).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

            Riga = Riga + 1
            Trovato = 0
        End If
    Next J



ma se scrivo di cercare "ro" non mi trovera' rossi xche e' scritto Rossi con la prima lettere Maiuscola

vorrei poter trovare Rossi anche se in fogl ricerche ho scritto ro in minuscolo
qundi vorrei che il foglio ricerche NON faccia distinzioni tra Maiuscolo-minuscolo.
sara' possibile ? :roll:
ringrazio
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi Anthony47 » 27/07/10 23:00

Codice: Seleziona tutto
Trovato = InStr(1, UCase(Foglio1.Cells(J, CC + 2)), UCase(Foglio2.Cells(4, CC)))

Vedi help on line di vba per la funzione UCase

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

rubrica telefonica che cerca in "note"

Postdi raimea » 28/07/10 05:54

Grazie, tutto ok.. :lol:
siamo arrivati cosi alla vers 3.7
ringrazzio tutti quelli che mi hanno risposto aiutandomi a creare una rubrica in excell
che ha come scopo principale, quello di poter fare le ricerche in tutti i campi,
anche scrivendo solo una parte di una parola/ o numero.

questa vers. per le mie esigenze e' ok, quindi considero terminato il programma.
metto a disposizione di tutti il file finale (c'e anche un foglio word x le spiegazioni).

saranno ben accetti commenti, suggerimenti e modifiche.

http://rapidshare.com/files/409515535/rubrica.zip
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

rubrica telefonica che cerca in note

Postdi raimea » 04/09/10 22:01

V 4.4
avrei ora, la necessita' di stampare solo i nomi che seleziono con "S"
nella col. W, (senza fare distinz fra S-s maiusc/ minusc).
ho provato con i filtri ma non va bene.
ho capito che devo usare un foglio di appoggio, (stamp-selez), nel quale
riportare i dati che mi servono x ogni cognome, tale foglio poi lo
andro' a nascondre ...
i campi da riportare per essere stampati dovrebbero essere nelle colonne:
da - E:k - e da - O:U- del foglio rubrica.
ma la macro .... non ci sono riuscito... :undecided:
vi allego file se qualcuno vuole tentare..

http://rapidshare.com/files/417100972/Copia_di_rubrica.zip
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi ricky53 » 05/09/10 00:19

Ciao,

ho provato con i filtri ma non va bene.


Sicuro???
Hai utilizzato una colonna di appoggio nella quale scrivere "s" o "S" (il maiuscolo o minuscolo non sono "Rilevanti" per il filtro) e poi hai filtrato su questa colonna???


Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

rubrica telefonica

Postdi raimea » 05/09/10 16:55

come ho scritto sopra, la colonna in piu' per scrivere la lettera S c'e' e' la Col. W.

se applico il filtro ovviamente mi trova solo le -S- che ho scritto
ma poi ho problemi nel foglio da stampare, se ho molti nomi e vorrei stampare gli ultimi
ES quelli con la Z mi troverei con dei fogli bianchi all' inizio.

quindi nasce la necessita di creare un foglio di oppoggio come ho scritto,
e lavorare sulla stampa di tale foglio.
ciao
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi raimea » 06/09/10 16:54

:D
V4.8
e' stata dura ma ci sono riuscito....
ora e' possibile anche selezionare determinati nomi ,
e stampare solo quelli.
la macro non sara' il massimo ma funge... :idea:
qui per curiosita' riporta quella completa.
Codice: Seleziona tutto
Sub stampas()

    ActiveSheet.Unprotect
   
        Sheets("stamp-selez").Visible = True  ' visualizzo il foglio
   
    Range("W3").Select  'attivo il filtro
    Selection.AutoFilter
    Selection.AutoFilter Field:=20, Criteria1:="x"
   
    Range("E4:U1100").Select
    Selection.Copy
    Sheets("stamp-selez").Select
    Range("E4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
       
        Range("E4:u1003").Interior.ColorIndex = 2  '<<< qui colora una riga
    For RR = 4 To 1003 Step 2
        Range("E" & RR & ":u" & RR).Interior.ColorIndex = 36
    Next RR
               
   
       Rows("4:1003").Select ' ordino l'altezza delle righe
    Selection.RowHeight = 20
   
   
     Columns("e:e").ColumnWidth = 26  ' ordino la larghezza colonne
    Columns("f:F").ColumnWidth = 22
    Columns("G:J").ColumnWidth = 16
    Columns("K:K").ColumnWidth = 20
    Columns("L:N").ColumnWidth = 16
    Columns("O:O").ColumnWidth = 20
    Columns("P:P").ColumnWidth = 4
    Columns("Q:q").ColumnWidth = 15
    Columns("R:R").ColumnWidth = 12
    Columns("S:S").ColumnWidth = 5
    Columns("T:T").ColumnWidth = 4
    Columns("U:U").ColumnWidth = 10
   
    Columns("L:N").Select 'nascondo colonne
    Selection.EntireColumn.Hidden = True
   
       
     SelPrint = Application.Dialogs(xlDialogPrinterSetup).Show  'gestisco la stampata
If SelPrint = False Then
    MsgBox "Stampa Cancellata"
   
    Range("E4:U1100").Select ' pulisco il foglio
    Selection.ClearContents
   
    Range("a1").Select
    ActiveWindow.SelectedSheets.Visible = False  ' nascondo il foglio
   
    Sheets("rubrica").Select
    Application.CutCopyMode = False
    Selection.AutoFilter Field:=20
       
    Selection.AutoFilter
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingColumns:=True, AllowFormattingRows:=True
    Range("U1").Select
   
    Exit Sub
   
End If
 
If [c2] <= 0 Then Exit Sub
    ActiveSheet.PageSetup.PrintArea = "$d$4:$u$" & 38 * [c2]
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
   
     With ActiveSheet.PageSetup
        .PrintTitleRows = "$3:$3"
        .PrintTitleColumns = ""
    End With
           
       
    Range("E4:U1100").Select ' pulisco il foglio
    Selection.ClearContents
   
    ActiveWindow.SelectedSheets.Visible = False  ' nascondo il foglio
   
    Range("a1").Select
   
             
    Sheets("rubrica").Select  ' tolgo il filtro
    Application.CutCopyMode = False
    Selection.AutoFilter Field:=20
   
   
    Selection.AutoFilter
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingColumns:=True, AllowFormattingRows:=True
    Range("U1").Select
End Sub

questo il collegamento dove scaricare il file
(contiene anche un piccolo file word di spiegazioni)
ciao

http://rapidshare.com/files/417438891/rubrica-excell.zip
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi raimea » 13/01/11 21:31

mi hanno segnalato che il file non e' piu
disponibile su rapidsher...... :(
effettivamente come server da alcuni mesi lascia MOLTO a desiderare...

ecco il nuovo link dove poter trovare il file della rubrica

http://www.sendspace.com/file/rd1ynr
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

rubrica telefonica

Postdi raimea » 01/12/11 21:57

V5.3
anche questo file e' stato fatto tutto grazie al vostro aiuto. 8)

sto cercando di aggiungere un -pezzo - di vba che poi aggiungero' in altra macro.

vorrei poter colorare sfondo NERO carattere Bianco
il primo Cognome,che cambia lettera,
cioe' quando si passa Es da rossi a--> Silvani vorrei colorare il primo cognome,e nome
che inizia con S solo il primo Cognome,vorrei colorare le 2 celle E (cognome), F (nome)
questo per dare un aiuto nella ricerca .

vi ringrazio.
ciao

http://www.megaupload.com/?d=FWMT45BD
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Re: rubrica telefonica

Postdi Anthony47 » 02/12/11 01:31

Con questa macro puoi ottenere l' effetto richiesto:
Codice: Seleziona tutto
Sub highl()
With Foglio1
For I = 4 To .Cells(Rows.Count, "E").End(xlUp).Row
    If UCase(Left(.Cells(I, "E"), 1)) <> UCase(Left(.Cells(I - 1, "E"), 1)) Then
        .Cells(I, "E").Resize(1, 19).Font.ColorIndex = 2    'Bianco
        .Cells(I, "E").Resize(1, 19).Interior.ColorIndex = 1  'Black
    End If
Next I
End With
End Sub

Tuttavia all' interno delle altre macro che colorano dovresti fare in modo che il font.colorindex venga ripristinato al valore Black; al momento invece questo valore non lo imposti mai, e in cosi' i font che la macro HIGHL modifica in bianco rimangono bianchi cioe' illegibili.

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

rubrica telefonica

Postdi raimea » 02/12/11 07:19

tutto ok :D
era proprio come volevo.
Tuttavia all' interno delle altre macro che colorano dovresti fare in modo che il font.colorindex venga ripristinato al valore Black; al momento invece questo valore non lo imposti mai, e in cosi' i font che la macro HIGHL modifica in bianco rimangono bianchi cioe' illegibili.


hai pienamente ragione, grazie del consiglio
ho sistemato anche questo.

grazie.
S.O. win10, Excell 2019
Avatar utente
raimea
Utente Senior
 
Post: 1410
Iscritto il: 11/02/10 07:33
Località: lago

Precedente

Torna a Applicazioni Office Windows


Topic correlati a "rubrica telefonica":


Chi c’è in linea

Visitano il forum: Nessuno e 36 ospiti