Saltar al contenido

Macros y programación VBA

Temas sobre la automatización de Excel utilizando macros y VBA. Errores de VBA. ¿No consigues que tus macros hagan lo que necesitas?

  1. Buenos dias amigos. Recurro a ustedes porque tengo un problema con un formulario de busqueda que estoy haciendo, he buscado en la red, foros, YouTube, y no encuentro algo que me indique como usar el "Boton de Opciones" para seleccionar el parametro de busqueda, y tampoco un ejemplo para ver donde esta mi error. Esta es una imagen del formulario, como pueden observar hay una serie de Botones para realizar las opciones de busqueda, y por el momento solo realiza la buqueda por Baul, no he logrado hacer que funcione para el resto de las opciones. Anexo archivo de ejemplo.Ejemplo FrmBuscar.xlsm Agradecido de antemano por la ayuda que me puedan …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 711 visitas
    • 1 seguidor
  2. Buenos dias, a todos los expertos tengo una pequeña base de datos cuando realizo la consulta me muestra bien la foto de la persona seleccionada pero solo hay un detalle que cuando de aquella persona no esta registro su foto en la carpeta de fotos me debe mostrar la otra imagen que dice error, gracias por su ayuda y su valioso tiempo adjunto el archivo. Base de datos.rar

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  3. Started by Dinkys,

    Estimados amigos del foro, Agradecer de antemano su tiempo en la ayuda que me puedan dar. A ver si alguien me puede ayudar con este fichero en el que necesito crear una macro que recorra cada celda el rango L4 hasta el final donde hay dato (esta columna es la primera operación), por calda celda que recorra de la columna L con valor, mire hacia la celda derecha : Si la celda de la derecha M4 está vacía ponga la palabra GV Si no está vacía mire hacia la derecha N4 Si N4 está vacía ponga la palabra GV Si no está vacía mire hacia la derecha O4 Si O4 está vacía ponga la palabra GV Si no está v…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 553 visitas
  4. Hola, tengo un proyecto donde se abre un formulario de login con un usuario y contraseña, pero me percato de que cuando la contraseña tiene solo números indica que "La contraseña es invalida" pero cuando cambio la contraseña a con letras si permite continuar, mi pregunta será ¿Cómo valido que el usuario ingrese mínimo una letra en la contraseña? o ¿cómo valido que me tome una contraseña de sólo números?

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
    • 1 seguidor
  5. Started by coronelo,

    Buenas chicos hay va un reto, yo no se ni por donde empezar. dentro del excel explico lo que quiero hacer. Libro1.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 713 visitas
  6. Buenos días de nuevo. necesito hacer una pequeña consulta. es referente a la entrada de datos en un calendario. Se realiza mediante un UserForm con OptionButton. Necesitaría ayuda por que querría que al seleccionar una celda, escribiera el dato en un numero determinado de celdas contiguas (Ej si es Batería nº 1 como máximo son 3 días hábiles pero pueden ser solo 2 o 1), saltando los días de cierre de las naves, que es donde me lió. Lo he intentado con un contador con una variable que pide cuando das a validar pero no me ha salido Si me pudierais orientar os estaría muy agradecido. Subo un archivo para que lo veáis. Muchas gracias de ante mano baterias.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 882 visitas
  7. Started by Moratti,

    Tengo un comboBox con 2 Columnas y al pasar los datos a un ListBox, solo me pasa el dato de una de las columnas. Asignar una prenda y la cantidad de prendas. en el Formulario tengo lo siguiente Private Sub UserForm_Initialize() Dim L as Long With Hoja7 Me.ComboProd = Clear ' ComboProd es el nombre del Combo Do while . Cells(L,1) <>"" ComboProd.AddItem ComboProd.List(ComboProd.ListCount -1, 0) =.Cells(L, 1) ComboProd.List(ComboProd.ListCount -1, 1)=.Cells(L, 1) L = L + 1 Loop End With End Sub Se añaden los datos al ListBox a trav…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 992 visitas
  8. Started by hernangimenez25,

    hola a todos, tengo una macro que una de las funciones que me hace es enviar por mail un reporte, son muchos los destinatarios, pero por cada uno de ellos se envia un mail, o sea, si tengo 13 destinatarios se envian 13 mail con sus respectivo reporte (en donde trabajo no quieren que sepan a quien se envian por eso sale a cada destinatario con una sola persona y no con varias en un solo mail) El inconveniente surge que usamos id, (entonces cuando bajamos el reporte solo me trae estos numeros y no el mail de la persona) o sea, numeros como 893.212, si pongo ese mismo numero en el "to" del mail, y luego hago "check name" ese numero se convierte en un mail de usuario, ej.: p…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 812 visitas
  9. Macro para: 1. Cuatruplicar datos, 2. Cambio horizontal a vertical condicional Hola a todos, Espero que podaís echarme, con vuestros conocimientos, una mano en una árdua tarea. Poseo una base de datos con 512 observaciones y necesito cambiar la estructura de los mismo. Se trata de un ejercicio donde, en primer lugar, se recogen las características de los individuos y, en segundo lugar, se le indica que ordenen cuatro fotografias (asignando un 1 a la que menos les gusta y una 4 a la que más) extraídas de forma aleatoria de 32 posibles. Estos datos están en forma horizontal y necesito crear una nueva variables que se llame ELE para ordenar en vertical las puntuaciones de …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2k visitas
  10. Un favor, me pueden ayudar a generar archivo txt en la columna N de la primera hoja excel pero con alguna macro y asignandole un boton para ejecutar. Al unir quiero que sea usando la barrita "|" Gracias, No puedo adjuntarlo pero asi debe quedar pero quiero una macro y boton ejecutar. [TABLE=width: 615] [TR] [TD]20130600| 1| 01| 121| 20/10/2010| VENTA DE MERCADERIAS| 11900.00| 0.00| 1|[/TD] [/TR] [TR] [TD]20130600| 1| 01| 40111| 20/10/2010| VENTA DE MERCADERIAS| 0.00| 1900.00| 1|[/TD] [/TR] [TR] [TD]20130600| 1| 01| 701| 20/10/2010| VENTA DE MERCADERIAS| 0.00| 10000.00| 1|[/TD] [/TR] [/TABLE]

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  11. Started by javeli,

    buenos dias. necesito poder insertar en esta hoja tantas celdas como me marque la primera celda de la fila y que se refleje en otra linea. Muchas gracias. adjunto hoja consulta.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 516 visitas
  12. Buenos dias maestros del excel, Tengo un userform con varios ComboBox y ellos hagan las consultas de distintas tablas del access (datos constantemente actualizándose) con la acción del UserForm_Initialize. Con este codigo puedo consultar en el combobox desde access: Private Sub UserForm_Initialize() Dim cn As Object Dim datos As Object Dim consultaSQL As String Dim conexion As String Set cn = CreateObject("ADODB.Connection") conexion = "Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=C:\Users\JULIO CESAR\Desktop\Prueba_V01.accdb" 'Aqui va la ruta de tu base de datos consultaSQ…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.1k visitas
  13. Started by NAB_20,

    Buenas, estoy intentando controlar varios errores en un código con la instrucción "On Error Goto [LABEL"]. El primer error que detecta sí que funciona bien pero en el siguiente ya da error. La idea del código es que mire si hay determinada imagen en la hoja y en caso de que no la localice pase a la siguiente línea para ver si hay otra imagen que me interesa localizar Adjunto archivo. Saludos y gracias PruebaError.xlsm

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  14. Started by freeweb,

    Hola, soy nuevo en esto de los foros (disculpenme si me equivoco en algo:beguiled:) ... Tengo una columna de datos así: asdf (en negrita tal cual) qwe ert yui poiu (en negrita tal cual) bnm cvb ert tyu cuando uso la opción de copiar y pegar me lo transpone así: asdf qwe ert yui poiu bnmcvb ert tyu y quiero transponerlo así: asdf qwe ert yui poiu bnmcvb ert tyu como puedo hacerlo?.... tengo mas de 10000 datos. He buscado otras macros que estan en el foro pero no he conseguido una que lo haga :joyous:. Agradecería cualquier ayuda:grief: o sugerencias....

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 854 visitas
  15. Started by naubp,

    Buenas, estoy intentando hacer un programa VBA el qual me coja un valor ya establecido aleario, por ejemplo en "A1" y este colocarlo dentro de una formula: valor(C1)=A1*B1 con tambien B1 conocido,para que me de el valor en C1. El problema que tengo es que dentro de la formula quiero que B1 me varie hasta B100... valor(C2)=A1*B2.. etc y una vez tengo los 100 valores que me salte a la siguiente celda A2 y repita la operacion: valor(C101)=A2*B1. Hasta A1000.... tendre C100000 celdas. Con macros no se como utilizar la funcion For dentro de ellas. Y hay algun problema si uso C(1000*10000)=C(10000000) me lo va aceptar Excel? Mi programa lo tengo hecho: y me sale error pero…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 802 visitas
  16. Started by kaderas,

    Hola buenas a todos. En esta ocasión por mucho que he buscado en el foro no encuentro solución a mi problema. Tengo un macro mediante el cual cambio los valores de una columna por los valores de otra. Tengo 2 hojas creadas, una la he llamado lista y la otra datos. En la sheet lista, he colocado la relación de los números que tiene que reemplazar y por cual en cada caso. El macro me cambia los valores de las celdas bien, pero luego vuelve a cambiar el valor de nuevo en las celdas que ya había modificado, volviendo a cambiar el valor de las celdas y creando un caos en el resultado. Ejemplo: 1 - 97 2 - 98 3 - 99 4 - 101 5 - 103 6 - 105 7 - 107 8…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 2.1k visitas
  17. Started by sabatd,

    Buenas tardes. Tengo una conexión a una tabla de query, pero cuando actualizo el excel el primer dato que me trae a excel es el siguiente 3,7791E+17 y tendría que ser este numero. 377912903807458311 que es lo que estos haciendo mal?? Desde Gracias Saludos Sabatd datos de query .xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 613 visitas
  18. Started by dalia alarcon,

    Buenos días, espero alguien me pueda ayudar debe ser algo muy sencillo pero no tengo idea como hacerlo. Tengo un código para que me muestre el contenido de una celda en un textbox de un formulario, como puedo mantebner el dato en el textbox aún cuando inserto o elimino filas o columnas en el libro de excel, es decir , en B1=546 cuando inserto una fila pues el 546 ya esta en la celda B2, cómo hago para que se modifique esto automáticamente en el código VBA y me siga mostrando el 546 en el textbox El código que tengo ahora es Private Sub TextBox1_Change() With UserForm1 .TextBox1.Value = Range("=b1").Value End With End Sub consulta foro.zip

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.8k visitas
  19. quiero que las persona que tengan mi libro y alguien actualice algo los demás los vean desde su casa como seria eso

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 680 visitas
  20. HOLA NECESITO SEPARAR TEXTO Y NUMERO A PARTIR DEL PRIMER NUMERO Q ENCUENTRE POR EJEMPLO KETOROLACO DE 10MG SEPARAR 10MG EN OTRA CELDA

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 794 visitas
  21. Started by CarlosKurt,

    Hola a tod@s. Como siempre agradecido por su tiempo y aporte para este nuevo tema. Tengo la siguiente macro Sub CopyPaste() Dim xRng As Range On Error Resume Next Set xRng = Application.InputBox("Selecciones el rango:", "MS Excel", , , , , , 8).Select ' If xRng Is Nothing Then Exit Sub Selection.SpecialCells(xlCellTypeBlanks).Select Range("A1").End(xlDown).Offset(1, 0) = "=R[-1]C" Columns("A:A").SpecialCells(xlCellTypeFormulas, 23).Copy ' Range("A1").End(xlDown).Copy ActiveSheet.Paste End Sub El cual funciona bien cuando se ingresa el rango en el InputBox. El detalle esta cuando decido "Cance…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 934 visitas
  22. Estimados amigos del foro, esperando en este momento sigamos cuidándonos del problema mundial. Entre tanto, he estado tratando de poder resolver un problema en la que me quede estancado. Se trata de determinar el número de horas de investigación por mes pero para ello hay que separar a días laborables y nuevamente de estos tomar en cuenta el dia que ha sido asignado esta labor y las horas estipuladas. Aquí es necesario distinguir un año normal del bisiesto. Todo esto surge sobre todo por que cada mes muestra semanas incompletas al inicio o al final. Por esta razón he creído que es mejor tomar en cuenta no por semana sino por los días del mes (Ver imagen). Aquí n…

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 890 visitas
  23. Started by jumarcano,

    Hola compañeros Deseo hacer un contador de dinero. Billetes y monedas. Pero para guardar los conteos Guardo los datos agregados en otra. Pero no consigo crear varios reportes. La idea es crear el primer reporte y guardar, Luego crear otro reporte y guadar.... y asi sucesivamente. Intente pero no conseguí hacerlo... Por favor me pueden ayudar Sub ReporteC() ' ' Reportes del día ' If Sheets("Conteo").Select = vbYes Then Sheets("Conteo").Select ActiveWindow.SelectedSheets.Delete Else ActiveWorkbook.Save Worksheets.Add.Name = "Conteo" ActiveCell.FormulaR1C1 = "Reporte del Dia 1 de la …

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.3k visitas
  24. Started by josegomez,

    Saludos a todos en el foro, con la siguiente cuestión. Tengo una userform con un listbox el cual contiene dos columnas, el problema es que en el rango renombrado hay muchísimas celdas en blanco. Lo que necesito es que en el userform solo se vean las celdas con valores es decir que no aparezcan las celdas en blanco ya que son muchas. Nota no puedo eliminar las celdas en blanco de donde obtengo la información para el listbox. Solo valoresen listbox.xls

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 1.2k visitas
  25. Started by NAYKARIME,

    Macro para mantener Formato de Celda destino Hola buen dia... recurro a ustedes porque soy muy novata en eso de los macros y he leido varias de sus experiencias. Necesito una macro en la cual al pegar en la columna A cualquier tipo de dato (numero, texto, fecha, etc), no modifique el formato destino, en este caso TEXTO. Ademas de que agradeceria me expliquen como ejecutarla, ya que esta diseñada para un usuariO final que solo sabe capturar, copiar, pegar, guardar. Se que al crearla hay un metodo abreviado perono se como usarlo. Gracias

    • 0

      Reacciones de usuarios

    • 2 respuestas
    • 5.3k visitas

Información básica de protección de datos

  • Responsable: Sergio Andrés Celemín
  • Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.
  • Legitimación: Consentimiento del interesado.
  • Destinatarios : Hetzner Online GmbH.
  • Duración: Mientras se conserve este post o hilo en la comunidad, o decidas eliminar el comentario.
  • Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso, rectificación, supresión, oposición y demás derechos legalmente establecidos a través del email [email protected]

Información adicional: Encontrarás más información en la política de privacidad.