none
Error de no encontrar dato en excel desde visual studio RRS feed

  • Pregunta

  • Buenos días foro, a ver si me explico bien

    Cuando hago una búsqueda de un dato concreto en excel, y no lo encuentra... se me para el programa diciendome que no lo encuentra, y eso que lo tengo dentro de una condicion para que haga o no haga cosas os dejo el codigo a ver si vosotros veis lo q le pasa

    Dim xlApp As Object
            Dim xlLibro As Object
            Dim xlHoja As Object
            xlApp = CreateObject("Excel.Application")
            xlLibro = xlApp.Workbooks.Open("d:\GESTION NOELIA\DATOS\GESNOECLI.XLSX")
            xlHoja = xlLibro.Worksheets("CLIENTES")
            Dim NIF As String = TBFacCIF.Text
            xlHoja.Select()
            If Not xlHoja.Range("A:A").Find(TBFacCIF.Text).Activate() Is Nothing Then
                LabFacNom.Text = (xlApp.ActiveCell.Offset(0, 3).Value) & " " & (xlApp.ActiveCell.Offset(0, 1).Value) & " " & (xlApp.ActiveCell.Offset(0, 2).Value)
                LabFacDir.Text = (xlApp.ActiveCell.Offset(0, 4).Value)
                LabFacPob.Text = (xlApp.ActiveCell.Offset(0, 5).Value) & " " & (xlApp.ActiveCell.Offset(0, 6).Value) & " " & (xlApp.ActiveCell.Offset(0, 7).Value)
                LabFacNIF.Text = (xlApp.ActiveCell.Offset(0, 0).Value)
                Info.Text = "Buscando cliente."
                xlApp.Workbooks.Close()
                Dim Hoy As Date = Today
                Dim Año As Integer
                Año = Year(Hoy)
                xlApp = CreateObject("Excel.Application")
                xlLibro = xlApp.Workbooks.Open("d:\GESTION NOELIA\DATOS\GESNOEFAC" & Año & ".XLSX")
                xlHoja = xlLibro.Worksheets("1 TRIMESTRE")
                Dim UlFac As String
                Dim NumFac As String
                UlFac = xlApp.WorksheetFunction.CountA(xlHoja.Range("A:A"), vbEmpty)
                NumFac = UlFac - 1
                LabFacNum.Text = NumFac & "/" & Año
                xlApp.Workbooks.Close()
            Else
                My.Computer.Audio.PlaySystemSound(System.Media.SystemSounds.Exclamation)
                Info.Text = "El CIF Introducido no se encuentra"
                Info.BackColor = Color.FromArgb(255, 192, 192)
            End If

    • Cambiado Enrique M. Montejo miércoles, 29 de marzo de 2017 6:12 Programación con Microsoft Excel.
    martes, 28 de marzo de 2017 6:11

Todas las respuestas

  • Vuelvo a votarme a mi mismo.

    He solucionado el problema, lo que hago es realizar una acción countif para que solo en caso de que salga 1 comience con la búsqueda, en caso contrario no permito que haga la búsqueda evitando que me genere el error y aviso al usuario de que no existe lo buscado.

    Si alguien necesitara el código que lo diga!!!

    miércoles, 29 de marzo de 2017 17:43