Ricerca di dati similari



  • Ricerca di dati similari
    di Momi (utente non iscritto) data: 20/02/2014 17:33:10

    Buon pomeriggio a tutti,
    mi trovo di fronte ad un paio di problemi che non riesco a risolvere.
    Ho un DB con un elenco di aziende (colonna I) tramite l'UserFormAziendeTrovate inserendo una porzione di stringa, grazie al codice che vi indico sotto, mi si popola una combobox di tutte le aziende che contengono nel nome quella porzione di stringa. All'interno della combobox si può scegliere l'azienda che si vuole vedere e si apre così un'altro form (UserformAziendaAnagrafica); il problema è che se ho più aziende con lo stesso nome, ma con dati diversi (es. tipo società o p.iva o indirizzo) mi vengono riportati nell'UserFormAziendaAnagrafica sempre solo i dati dell'ultima azienda omonima inserita.
    Sempre relativo alla compilazione dell'UserformAziendaAnagrafica quando vengono importati i dati non mi mantiene la formattazione presente nel foglio "ANAGRAFICHE", mi spiego meglio se nella colonna cod del foglio di excel c'è +39 nel form mi riporta solo 39, lo stesso vale per i prefissi e le partite iva che iniziano o no con lo "0".
    Grazie in anticipo per l'aiuto!
     
    CODICE VBA USERFORMAZIENDETROVATE (TASTO ELENCO):
    Private Sub CommandButtonElencoAziende_Click()
     Dim c As Range
      Dim sAddr As String
    
      UserFormAziendeTrovate.ComboBox1.Clear
      With Worksheets("ANAGRAFICHE")
        With Intersect(.Range("I6").CurrentRegion, .Range("I:I"))
          Set c = .Cells.Find(UserFormAziendeTrovate.TextBoxRicerca.Value, LookIn:=xlValues, LookAt:=xlPart)
          If Not c Is Nothing Then
            sAddr = c.Address
            Do
              UserFormAziendeTrovate.ComboBox1.AddItem c.Text
              Set c = .FindNext(c)
            Loop While Not c Is Nothing And c.Address <> sAddr
            UserFormAziendeTrovate.ComboBox1.ListIndex = 0
            Else
                Dim mycheck As VbMsgBoxResult
                    mycheck = MsgBox("Azienda non presente", vbOKOnly)
                    Exit Sub
          End If
        End With
      End With
      Set c = Nothing
    End Sub
    
    CODICE VBA PER INSERIRE I DATI NELl'USERFORMAZIENDAANAGRAFICA (TASTO VAI dell'UserFormAziendeTrovate)
    
    UserFormAziendaAnagrafica.Show
    Do
     i = i + 1
        If ComboBox1 = Worksheets("ANAGRAFICHE").Cells(5 + i, 9) Then
            UserFormAziendaAnagrafica.TextBoxRagioneSociale.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 9)
            UserFormAziendaAnagrafica.ComboBoxTipoSocieta.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 10)
            UserFormAziendaAnagrafica.TextBoxPIva.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 11)
            UserFormAziendaAnagrafica.ComboBoxClasse.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 12)
            UserFormAziendaAnagrafica.ComboBoxSettMerc.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 13)
            UserFormAziendaAnagrafica.TextBoxProdotti.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 14)
            UserFormAziendaAnagrafica.TextBoxIndirixzzoNo.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 15)
            UserFormAziendaAnagrafica.TextBoxCap.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 16)
            UserFormAziendaAnagrafica.TextBoxCitta.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 17)
            UserFormAziendaAnagrafica.TextBoxProv.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 18)
            UserFormAziendaAnagrafica.TextBoxNaz.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 19)
            UserFormAziendaAnagrafica.TextBoxCod.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 20)
            UserFormAziendaAnagrafica.TextBoxTel.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 21)
            UserFormAziendaAnagrafica.TextBoxFax.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 22)
            UserFormAziendaAnagrafica.TextBoxWeb.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 23)
            UserFormAziendaAnagrafica.TextBoxMail.Value = Worksheets("ANAGRAFICHE").Cells(5 + i, 24)
            Else
            End If
            Loop Until Worksheets("ANAGRAFICHE").Cells(5 + i, 9) = ""



  • di patel data: 20/02/2014 17:45:54

    per il primo problema potresti utilizzare il nome + la partita IVA per identificare la ditta sia nella combo di scelta che per la visualizzazione dei dati nella seconda userform