Condividi:        

Aiuto per Macro

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

Aiuto per Macro

Postdi marte1503 » 14/01/23 18:39

Ciao a tutti,
spiego prima quello che vorrei fare poi posto la macro che ho creato raccattando qua e là tra i codici che ho..

Ho pensato di usare due celle per ottenere i dati che mi servono (filtrando Tabella2133)

- Cella D6 che utilizzo per inserire il Nome Cliente
- Cella D8 per inserire il Numero d'Ordine

prima condizione: modificando D6, Cella D8 deve ripulirsi e rimuovere Filtro4 e Filtro7 potenzialmente attivi che controllano rispettivamente Nome Cliente e Numero d'Ordine

- Compilando D6, si deve attivare Filtro4 con Criterio D6 appunto..(in questo modo ottengo tutti gli ordini di quel Cliente)

in seguito,

- Compilando D8 si deve attivare Filtro7 (per ottenere tutti i risultati collegati a quello specifico Numero d'Ordine)

sarebbe bello se questi filtri si attivassero senza bisogno di creare pulsanti, quindi avevo pensato di inserire questi comandi direttamente nel modulo di Foglio7

L'unico risultato ottenuto fin'ora è:

- pulizia di Cella D8 se modifico D6 ( ok )
- Si attiva correttamente Filtro4 se compilo D6 ( ok )

- Quando provo a reinserire un nuovo Nome Cliente in D6 la Tabella non si riarma con tutti gli elementi perchè i Filtri restano inseriti :-?

più avanti di così però non riesco ad andare... :-?

Grazie per l'aiuto
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Area As String, inArea As Range, myC As Range
   
'Se modifico la cella  Cancella le altre celle di immissione dati



If Target.Address = "$D$6" Then
    Range("D8").ClearContents
   
    If Cells(6, 4) = "" Then
    ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=4
    ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=7
End If

ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=4, Criteria1 _
        :=Cells(6, 4)

End If
End Sub
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como

Sponsor
 

Re: Aiuto per Macro

Postdi Anthony47 » 15/01/23 20:39

Ad esempio:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$6" Then
    Range("D8").ClearContents
    If Target.Value <> "" Then
        ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=4, Criteria1 _
            :=Target.Value
    Else
        ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=4
    End If
ElseIf Target.Address = "$D$8" Then
    If Target.Value <> "" Then
        ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=7, Criteria1 _
            :=Target.Value
    Else
        ActiveSheet.ListObjects("Tabella2133").Range.AutoFilter Field:=7
    End If
End If
End Sub

Prova...
Avatar utente
Anthony47
Moderatore
 
Post: 19480
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Aiuto per Macro

Postdi marte1503 » 16/01/23 19:39

Grazie 1000 Anthony!
provo solo ora la tua macro, è perfetta :)

Alla prossima e grazie ancora!
Ciao
marte1503
Utente Senior
 
Post: 232
Iscritto il: 08/01/10 20:43
Località: Como


Torna a Applicazioni Office Windows


Topic correlati a "Aiuto per Macro":


Chi c’è in linea

Visitano il forum: Marius44 e 16 ospiti