Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Bisual base excel

Estas en el tema de Bisual base excel en el foro de Visual Basic clásico en Foros del Web. HOLA COMPEÑEROS DE WED TENGO UNA PEQUEÑO PROBLEMITA Tengo una columna de nombre y otra columna de direcciones, teléfonos Los cuales se cargan mediante una ...
  #1 (permalink)  
Antiguo 15/01/2010, 17:43
 
Fecha de Ingreso: enero-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
De acuerdo Bisual base excel

HOLA COMPEÑEROS DE WED
TENGO UNA PEQUEÑO PROBLEMITA
Tengo una columna de nombre y otra columna de direcciones, teléfonos
Los cuales se cargan mediante una macro a esta hoja el problema que tengo es que una ves cargado no puedo modificarlos al menos que valla a la hoja y busque el nombre y modifique los datos cambiante intente con buscarv pero los busca pero no puedo grabar las modificaciones.
Me podrían ayudar a crear una macro que al poner el nombre los busque y pueda modificarlos.
agradecido desde ya
  #2 (permalink)  
Antiguo 18/01/2010, 14:13
 
Fecha de Ingreso: enero-2007
Ubicación: 9 de julio
Mensajes: 111
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: Bisual base excel

Hola, aca te paso un codigo que hace la busqueda que necesitas
Entiendo tenes en la columna A el nombre y en la B la direccion
Luego tendras que adaptarlo para controlar que no ingresen valores nulos, etc, pero esto es lo central de tu busqueda.
Espero te sirva

Código:
Option Explicit
Sub Busca()
Dim Nombre As String, MiRango As Range, Temp As Integer, Linea As Integer
'Porque si no lo encuentra pone 0
    On Error GoTo ErrorBusq
    
    'Para saber cuantas lineas hay en la columna A
    Temp = Range("A1").CurrentRegion.Rows.Count
    'Rango de la columna A donde se buscaran los datos
    Set MiRango = Range("A1 :A" & Temp)
    'Nombre a Buscar
    Nombre = InputBox("Nombe a Buscar", "Buscar")
    
    'Range("b11").Formula = Application.WorksheetFunction.Match(Nombre, MiRango, 0)
    Linea = Application.WorksheetFunction.Match(Nombre, MiRango, 0)
    'Si encontro el dato
    If Linea <> 0 Then
        'Cambio el nombre, o dejo el que estaba
        Range("A" & Linea).Value = InputBox("Nuevo Nombre", "Nombre", Nombre)
        'Cambio la direccion
        Range("B" & Linea).Value = InputBox("Nueva direccion", "Direccion")
        MsgBox "Cambio Realizado"
    End If
    
    Exit Sub
    
    
ErrorBusq:
        'Significa que no esta
        If Err.Number = 1004 Then
           Linea = 0
           MsgBox "No existe: " & Nombre
        End If
End Sub

Etiquetas: excel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:10.