Risultati da 1 a 3 di 3

Discussione: filtro date e controllo duplicati



  1. #1
    L'avatar di nessi
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Milano
    Età
    53
    Messaggi
    159
    Versione Office
    2013/2016
    Likes ricevuti
    3
    Likes dati
    35

    filtro date e controllo duplicati

    buona sera, dopo un po' di tempo rieccomi con ben due necessità.

    1- ho bisogno di una routine che mi controlli se ogni valore del foglio "N" colonna A c'è nel foglio "ARCHIVIOUSP" colonna A. Se c'è passa al successivo altrimenti se manca mi deve copiare tutta la riga del foglio "N" nella prima riga libera del foglio "ARCHIVIOUSP". La macro viene attivata dal commandbutton3

    2- devo filtrare per data da / a inserite in textbox1 e textbox2. non ce la sto facendo. ho trovato un esempio valido in rete ma mi consente di selezionare le date da messagebox. mi serve che siano filtrate dalle textbox.

    so che le richieste, messe così sembrano la lista della spesa ma non ne sto venendo a capo. Poteste suggerirmi una traccia ve ne sarei grato.

    allego file di esempio.

    uso Office 2010.

    grazie in anticipo per l'aiuto che vorrete darmi.
    File Allegati File Allegati

  2. #2

    L'avatar di Rubik72
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Cosenza
    Età
    45
    Messaggi
    2808
    Versione Office
    Excel 2013
    Likes ricevuti
    1020
    Likes dati
    979
    Ciao nessi. Il primo punto è chiaro e ho risolto. Al secondo punto non dici a quale foglio va applicato il filtro. Vedendo delle date solo nel foglio "REGISTRO" ho applicato il filtro a quel range, ma attenzione, sul tuo file (che probabilmente sarà stato importato da file esterni) la colonna AH che sembra in formato data in verità è in formato testo e per applicare il filtro ho dovuto convertire il testo in data.
    Il resto è da testare.
    Ecco la routine al punto 1:
    Codice: 
    Private Sub CommandButton3_Click()
    Dim iRow As Long, xRow As Long
    Dim uRiga1 As Long, uRiga2 As Long
    Dim Wks1 As Worksheet, Wks2 As Worksheet
    Dim iCol As Long, iCount As Long
    
    
    Set Wks1 = Foglio1
    Set Wks2 = Foglio2
    
    
    uRiga1 = Wks1.Cells(Rows.Count, 1).End(xlUp).Row
    uRiga2 = Wks2.Cells(Rows.Count, 1).End(xlUp).Row
    iCount = uRiga2
    
    
    For iRow = 2 To uRiga1
        For xRow = 2 To uRiga2
            If Wks1.Cells(iRow, 1) = Wks2.Cells(xRow, 1) Then
                GoTo Successivo
            End If
        Next
        iCount = iCount + 1
        For iCol = 1 To 4
            Wks2.Cells(iCount, iCol) = Wks1.Cells(iRow, iCol)
        Next
    Successivo:
    Next
    End Sub
    ed ecco la routine al punto 2:
    Codice: 
    Private Sub UserForm_initialize()
    Set sh = ThisWorkbook.Worksheets("ARCHIVIOUSP")
    sh.Select
        Me.StartUpPosition = 0
        Me.Top = Application.Top + Application.Height - Me.Height
        Me.Left = Application.Left + Application.Width - Me.Width
         
    '==============================
    'converte i valori del foglio registro col AH
    'da testo a date indispensabili per il filtro
    Dim mioRange As Range
    
    
    Set mioRange = Foglio3.Range("A1").CurrentRegion
        
    For iRow = 2 To uRiga
        mioRange.Cells(iRow, 34) = CDate(mioRange.Cells(iRow, 34).Value)
    Next
    '==============================
    End Sub
    Private Sub CommandButton4_Click()
    Dim mioRange As Range
    Dim uRiga As Long
    
    
    If Not IsDate(TextBox1) Then
        MsgBox "Inserisci una data corretta di inizio", vbCritical + vbOKOnly, "Attenzione"
        Exit Sub
    End If
    If Not IsDate(TextBox1) Then
        MsgBox "Inserisci una data corretta di fine", vbCritical + vbOKOnly, "Attenzione"
        Exit Sub
    End If
    
    
    Set mioRange = Foglio3.Range("A1").CurrentRegion
        
    mioRange.AutoFilter _
        Field:=34, Criteria1:=">=" & Format(TextBox1, "mm/dd/yy"), _
        Operator:=xlAnd, _
        Criteria2:="<=" & Format(TextBox2, "mm/dd/yy")
        
    End Sub
    File Allegati File Allegati

  3. #3
    L'avatar di nessi
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Milano
    Età
    53
    Messaggi
    159
    Versione Office
    2013/2016
    Likes ricevuti
    3
    Likes dati
    35
    grazie mille Rubik72!
    si hai compreso bene, il filtro va applicato al foglio "REGISTRO" e il file esempio che ho allegato è estratto da un altro ben più complesso ed articolato. errore di copia/incolla. perdona, mio sbaglio a non specificarlo.
    per il punto 1 ho anche compreso dove sbagliavo: nelle dichiarazioni iniziali. non è proprio il codice che avevo tentato di costruire ma nella sostanza si avvicinava.
    per il punto 2 parti dall'userform_initialize. non partivo certo da li con i miei ragionamenti. lavoravo su macro da modulo.
    di nuovo grazie, ho parecchio su cui lavorare e ragionare.

    allego il file corretto ad uso e consumo di chi ne avesse necessità.
    File Allegati File Allegati

Discussioni Simili

  1. [Risolto] Cerca duplicati in matrice e somma duplicati
    Di alleiram87 nel forum Domande su Excel in generale
    Risposte: 10
    Ultimo Messaggio: 27/03/17, 21:51
  2. SOMMA.SE con FILTRO
    Di ranaone nel forum Domande su Excel in generale
    Risposte: 14
    Ultimo Messaggio: 16/07/16, 11:53
  3. Controllo moduli - casella di controllo
    Di CRISTIAN nel forum Domande su Excel in generale
    Risposte: 8
    Ultimo Messaggio: 03/05/16, 22:55
  4. filtro da elenco
    Di nessi nel forum Domande su Excel VBA e MACRO
    Risposte: 2
    Ultimo Messaggio: 22/03/16, 14:58
  5. [Risolto] filtro per formule
    Di Stefano nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 04/06/15, 08:27

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •