Wow!, hay otros youtubers farsantes q se la pasan hablan y hablando para ganar dinero teniendo videos largos, pero veo q usted si tiene vocacion de enseñanza. Y va directo al grano, ademas es bien especifico en cada isntante. Enserio, si es buen maestro. Saluds desde Peru.
muchas gracias estoy hace poco a mis 54 años metiéndome en el mundo de las macros.. pero tuturial me ayudo a resolver una duda que tenia... Desde Chile un abrazo.
Lo bueno de tus tutoriales y que siempre te voy a aplaudir es que si te sale algun error lo sabes corregir y nos enseñas de la forma que es fallando para aprender excelente tutorial...
Con nuestro grandísimo maestro OTTO aprendo una cantidad enorme de conocimiento en temas de Excel y gratis por eso si te doy miles de gracias nuestro apreciado profesor seria muy poco Un grandísimo saludo desde españa
Mejor que ir a la escuela, como dicen no hay edad para aprender, desde hace mucho quise aprender a hacer funciones con Excell pero por falta de tiempo, escuelas muy costosas y la fata de recursos, hoy estoy aprendiendo gracias a tus vídeos, Te agradezco sinceramente el tiempo que dedicaste a esto.
jose de Jesus Briseño Eso es cierto. En la escuela dan lo básico. Nosotros por nuestra propia cuenta tenemos que complementar ese conocimiento de manera auto-didacta. Saludos!!!
Como dicen no hay edad para aprender, Mejor que ir a un Instituto, estudie en Sao Paulo, Brasil, y se me complico un poco Excel pero con sus vídeos hoy estoy re aprendiendo gracias a sus vídeos, Muy buenos tutoriales, le agradezco y felicito por tu trabajo que comparte. Un saludo desde La Paz, Bolivia.
Mil gracias Maestro... Hoy es domingo de aprender excel, y este es el primero!!! Me encantó!! Vamos por el 3!!!! Estoy recopilando una serie de dudas, a medida que voy viendo los videos... cuando tenga bastantes te voy a consultar. Gracias.
Otto, te felicito pues todos tus vídeos relacionados con Excel son claro, preciso y muy educativo, gracias por hacerlo. Si en puede y deseas construye un sistema de facturación desde un formulario de VBA y controla el número de factura y todos sus por menores.
Javier, en serio es muy didáctico, muchas gracias por compartir esta información te agradecería uno que enseñe como seleccionar un rango de celdas para luego copiarlas en otra hoja e calculo por ej de A1 a AZ1 y lueo que con un click pueda pasar a reemplazarlas con el rango A2 a AZ2 y así sucesivamente.
Lázaro Reyes Eso me alegra muchísimo. Me alegra haberte ayudado. Saludos!!!
11 років тому
Felicitaciones. Este video es muy didáctico. Una sugerencia es que le coloques NÚMERO a sus videos, de esa manera sabemos cual es el orden para verlos no le parece? genial para los que no sabemos nada de Visual Basic y somos profesores, como aprender a programar "cosas" que nos sirvan para nuestro trabajo. Sus videos son excelentes, felicitaciones.
Es buenisimo el tutorial, gracias. habria la posibilidad de crear macro en for next u otro, que haga ingresar datos mediante formulario solo 5 veces por decir y que me grabe en hoja excel, despues de 5 veces , nuevamente inica el ciclo asi ....?? gracias, no es el tema del video, pero disculpe
Buenos dias, Señor Otto, Permita felicitarle por compartir sus conocimientos en Excel, solo que le queremos preguntar como le haria para que el input box funcione en varias celdas como si fuera una lista decendente, y felicitaciones por su canal de antemano se lo agradeceriamos mucho
Buen video, gran explicación, tengo una duda acerca de cuando se le asigna valores a las variables después de ser declaradas, he visto algunas líneas de código que empienzan asignando el valor con la palabra "Set", por ejemplo, *Set mivariable = "Valor para la variable""*, y en otra linas de código veo que simplemente se le asigna valor a la variable con el signo "=", me pregunto si si hay alguna diferencia entre los dos metodos, muchas gracias.
Hola ***** espero aprender este curso de EXCEL VBA...es la primera vez q estudio y quiero ser un buen programador :D............... en tus tutoriales quiero saber si explicas sobre las variables la funcion IF THEN ELSE, SELECT CASE, MSGBOX, porfavor ayúdame cualquier incomodidad..........gracias saludos desde Lima-Perú
hey tengo una duda, quiero hacer una macros para que grafique pero no con una grafica normal si no que si el valor es 5 que me llene de color 5 celdas de una fila o columna
buenas tengo una duda como hago para cuando yo uso el el inputbox me salga debajo inputbox, title, default etc ya que cuando digito se me ase dificil el ingresar las varientes y datos adems este sirve como guia
Hola Otto, como se haría el manejo de excepciones? es decir si lo que necesito es ingresar un numero entre 0 y 15 por ejemplo y de un mensaje de error si se ingresa algo no permitido? Saludos desde Costa Rica.
Buenas Tardes. estoy realizando un Doc. en Excel el cual quiero que me arroje un correlativo (numero secuencial) al momento de abrirlo. lo estoy realizando por medio de Visual Basic funciona pero no quiero que me salga el cuadro de pregunta. Ahora bien como puede realizar el correlativo sin usar el cuadro de pregunta?
Es posible que la variable que se ingrese en el inputBox realice una acción en el woorkbook?, ejemplo, abrir una hoja específica. Gracias por el vídeo!. Saludos.
Una Preguntita por que será que en Mí Programa Excel no me da la Pestaña "DESARROLLADOR", no se que es lo que pase, si me pudieras Echar la Mano te lo Agradecería... Felicidades por tus Tutoriales
crigone Hola... gracias por comentar... sigue estos pasos para activar la pestaña desarrollador: Clic en... Archivo> Opciones> Personalizar Cinta de Opciones... Y en la lista de la derecha del cuadro de diálogo encontrarás todas las pestañas, en las cuales, está la pestaña desarrollador deshabilitada. Haz clic en la casilla de verificación y da aceptar. LISTO... ya tienes la pestaña desarrollador.
OTTO BUENAS TARDES, EXCELENTE TU CANAL, UNA PREGUNTA QUE CODIGO USO PARA QUE CUANDO REGISTRE DATOS NO ME INSERTE UNA FILA SINO QUE SALTE DIRECTO A UNA CELDA, EL INSERTROW ME INSERTA UNA FILA NUEVA Y ESO NO ES LO QUE QUIERO, GRACIAS POR TU ATENCION.
Una consulta que pasa cuando ejecuto esta macro y cuando aparece el cuadro entrada de datos, me pregunta ingrese su nombre y todo lo demas, no ingreso dato alguno y presiono cancelar, me sale error de depuracion, como podria solucionar eso, porfavor ayudeme
EL ELEGIDO MATAO Utiliza un manejador de Errores, mira este ejemplo: Private Sub Ejemplo() On Error GoTo Errores 'AQUÍ VA TODO EL CÓDIGO TUYO Errores: Msgbox "Debe ingresar Datos" Exit Sub End Sub
Me gusta muchos los videos, Gracias por compartir, tengo una duda, que hacer si queremos que nuestra informacion no se vaya al Activesheet sino a otro tab del mismo archivo??.....gracias
Activesheet se refiere a la hoja activa, tenemos que sustituir esa palabra por el nombre de la hoja que queremos. No el nombre que aparece el tab, sino el nombre interno. En el entorno VBA puedes ver el nombre interno, si tienes una hoja que se llame ventas, su nombre real podría ser Hoja1. En conclusión tendrías que colocar la sentencia así: Hoja15.Range("A1") = Texto La info se va a ir a la hoja 15 o la que tu quieras. Saludos!
Thelma Ramirez Tenia esa misma pregunta, pero leyendo los comentarios para no caer en secuencia de realizar la misma pregunta, sin querer tope con esta, Gracias por la respuesta Estimado Otto
Estimado Otto, tus vídeos son muy buenos, en lo personal me han ayudado mucho, tengo una consulta en la parte que adicionas la palabra (Celda) en el lugar de destino activeSheet.Range(Celda) = Texto, dicha palabra no va entre comillas, según mi criterio todo lo que sea texto debe ir entre comillas. Sácame de esta duda por favor.
Jairo Salazar Salazar Hola Jairo, disculpa la tardanza en esta respuesta... Ok respondiendo a tu pregunta. No le pongo comillas ya la Celda es una variable de tipo String (cadena de texto), es por eso que no se le pone comillas. Sin embargo si se tratara de un nombre de Rango, o sea que si le pongo nombre a una celda y por casualidad le pongo Celda, en ese caso si tengo que ponerlo entre comillas ya que no estoy trabajando con una variable sino con un rango. Saludos!!!
Muchas gracias por los videos maestro, tengo una pregunta: si deseo pornerle la edad, la declaro con Dim Edad As Integer Y abajo hago los mismos pasos del inputbox, mi duda es como lo validaría?? Es decir con Activesheet.range(??) = ???? Ayudeme por favor
Arturo Araucano Sí, puedes seguir los mismos pasos. Pero la variable edad es mejor que la declares como Byte, ya que para ello no necesitas tanto espacio, ya que una edad solo utiliza hasta 2 dígitos. Saludos!!!
Sr. Otto Gonzáles, tengo una duda cuando estoy desarrollando una Macros en Excel, aparece un recuadro que dice "error 1004" y no me deja seguir avanzando con la Macros, trato de continuar con la Macros y nada, sigue marcando "Error 1004", como si fuera una habilitación errónea. Por favor si puede vea a que se debe, porque no me deja seguir con las Macros.
Buenas noches mi estimado Otto, observo que en la ventana de proyecto, las instrucciones para una macro tipo Private no recae en un MODULO ESTANDAR. Esto es normal?
Está genial el tutorial. Necesitaba algo como esto. Tengo una duda +ottojaviergonzalez. Hago el ejemplo mientras veo el vídeo pero a mí me sale un error que dice: "Error de compilación Se esperaba: fin de la instrucción" y lo estoy escribiendo tal y como está en el video. Espero que no te moleste mi duda, soy un usuario no tan avanzado pero necesito aprender esto, y ya me pasó que otro youtuber me dijo que necesitaba buscar otro tutorial a mi nivel :( espero puedas ayudarme.
Buenas noches Otto. Nuevamente te molesto con una duda, practicando el InputBox, con ejemplos mios. Estoy trabajando con numeros de 4 digitos y declare la variable como integer, si le pongo el numero y le doy en Aceptar, lo todo hace bien, pero si le doy en Cancelar me dice: Se ha producido el error '13' en tiempo de ejecucion: No coinciden los tipos Como soluciono esto? Mil gracias de antemano. Saludos desde Mexico
+Sergio Ramos .-Probablemente ya resolviste tu problema , por si no es así y por si alguien más tiene el problema actualmente, quiero ayudar en esto. sólo hay que agregar la siguiente instrucción inmediatamente después de la llamada al "InputBox" If (variable) = Empty Then Exit Sub ó , en su defecto If (variable) = Empty Then GoTo (linea) Donde (variable): es la variable que propiamente estás utilizando y (linea): es una etiqueta de linea que tendrás que poner en el lugar a donde quieres que se haga el salto de instrucciones Cabe mencionar que esto lo he aprendido siguiendo los videos de Otto y de algunos instructores más que; cómo El, son muy buenos con Excel. Saludos PD: Un agradecimiento a Otto por compartir sus conocimientos por este medio.
TIPOS DE DATOS String es para un dato de texto y siempre va en comillas INT es un tipo de dato entero para numeros Double es un tipo de dato real Decimal para numeros decimales y asi existe muchos
Porque no puedo crear variables AYUDA! Cuando creo Dim a as Char, o double, o Integer lo que sea y corro el programa me aparece un error de que "no se ha definido el tipo definido por el usuario" Function NumeroDecMasked(ByVal e As System.Windows.Forms.KeyPressEventArgs, ByVal Text As MaskedTextBox) As Integer . No entiendo por que pasa, hago todo bien y pasa eso, estoy enojado ya. porfavor ayudaaaa
HOLA BUENAS NOCHES LE FELICITO POR SUS VISEOS LA VERDAD HA SIDO DE GRAN AYUDA LE FELICITO, TENGO UNA PREGUNTA ESTOY HACIENDO UN PROGRAMA EN EL CUAL TENGO EL BOTON AGREGAR CUANDO LE DOY CLIC EN AGREGAR NECESITO QUE ABRA UNA NUEVA HOJA, Y SI AGREGO OTRO USUARIO NECESITO OTRA HOJADEL MISMO LIBRO NECESITO AYUDA CON RESPECTO AL CODIGO TENGO UNA IDEA LO INTENTE PERO ME GENERA ERROR POR QUE SOLO ME LO HACE EN LA MISMA HOJA Y YO NECESITO QUE QUE CUANDO LE DE ADD ME AGREGUE UNA NUEVA HOJA Y SI ES MODIFICAR ME LO BUSQUE POR NOMBRE DE HOJA
Buenas noches, excelente explicación, ahora como seria para restringir el inputbox para que no lo dejen en blanco? para obligar a que escriban algo?? yo utilice un condicional de la siguiente manera: If nh = "" Then MsgBox "No puede dejar en blanco el nombre de la hoja", vbCritical Else ActiveSheet.name = nh ActiveSheet.Range("K6") = nh MsgBox "Hoja " & nh & " creada" End If Donde nh es la variable donde estoy asignando lo que se introduce en el inputbox, ahi me muestra el mensaje de error pero al darle aceptar se sale y deja todo tal cual como quedo. Para ponerlo en contexto con un boton estoy copiando y pegando una hoja de excel dentro del mismo libro y adicionalmente solicito mediante el inputbox que se le asigne el nombre a la nueva hoja, no quiero que salga el nombre que le asigna excel automaticamente sino el que el usuario desee, pero no quiero que lo deje en blanco.
Bueno ya resolvi, simplemente inclui el comando de copiar y pegar hoja luego del Else de esta manera (Copiare el codigo completo para que lo analicen): Sub Copiar_Hoja() Dim resp As Integer Dim nh As String resp = MsgBox("Desea crear un nuevo Slide Sheet?", vbYesNo + vbQuestion, "Crear nueva Hoja") Select Case resp Case vbYes nh = InputBox("Por favor asigne un Nombre al nuevo Slide Sheet") If nh = "" Then MsgBox "No puede dejar en blanco el nombre de la hoja", vbCritical, "Asignacion de nombre a la Hoja" MsgBox "Hoja no creada", vbCritical, "Error" Else Worksheets(1).Copy Before:=Worksheets("REPORTE FINAL") ActiveSheet.name = nh ActiveSheet.Range("K6") = nh MsgBox "Hoja " & nh & " creada" End If Case vbNo MsgBox "Hoja no creada", vbCritical, "Error" End Select
Fabricio Ramírez Cifuentes En este ejercicio he declarado las variables como String, ya que lo que ingreso en los InputBox, son cadenas de texto, y cuando creo la variable Celda, es para convertir eso en mi rango de destino.
¿Qué pasa cuando se oprime cancelar y el resultado es falso? Tengo este código para nombrar hojas de trabajo y solamente se creen en cuanto las valla necesitando Application.ScreenUpdating = False nomgroup = InputBox("ESCRIBE EL NOMBRE DE LA HOJA", "LISTA ALMANEGRA") If nomgroup "Falso" Then Sheets("GRUPO").Visible = True Sheets("GRUPO").Select Sheets("GRUPO").Copy Before:=Sheets(1) Sheets("GRUPO (2)").Name = nomgroup Sheets("GRUPO").Visible = False Sheets("NUEVA LISTA").Select Application.ScreenUpdating = True End If End Sub´ Así solucioné para cuando se le da en cancelar. Pero si estuviera en inglés, no funcionaría. ¿Cómo hago para que si el resultado es " false", no me cree la hoja con el nombre "false". ¡Gracias!
excelente profesor , pero me parece q hay algo malito o me equivoco,,,,lugar de decir "seleccione la celda destino", deberia decir "escribir la celda destino" no cree usted??...ya q seleccionar supongo es hacer clic en la celda .............ummmmmmmmm despues mi profe todo bien...grxs..cuidese ps
Wow!, hay otros youtubers farsantes q se la pasan hablan y hablando para ganar dinero teniendo videos largos, pero veo q usted si tiene vocacion de enseñanza. Y va directo al grano, ademas es bien especifico en cada isntante. Enserio, si es buen maestro. Saluds desde Peru.
muchas gracias estoy hace poco a mis 54 años metiéndome en el mundo de las macros.. pero tuturial me ayudo a resolver una duda que tenia... Desde Chile un abrazo.
Lo bueno de tus tutoriales y que siempre te voy a aplaudir es que si te sale algun error lo sabes corregir y nos enseñas de la forma que es fallando para aprender excelente tutorial...
Con nuestro grandísimo maestro OTTO aprendo una cantidad enorme de conocimiento en temas de Excel y gratis por eso si te doy miles de gracias nuestro apreciado profesor seria muy poco Un grandísimo saludo desde españa
Muchas gracias por tu apoyo y valoración.
Saludos y un fuerte abrazo!
Muchas gracias, me has ayudado mucho con tu tutorial, de tanto quebrarme la cabeza, tu me sacaste del apuro, para un reporte con tus tutoriales
Excelente Curso. Ya comencé a llevar un control en excel para terminar todo este curso. Gracias!!!
Mejor que ir a la escuela, como dicen no hay edad para aprender, desde hace mucho quise aprender a hacer funciones con Excell pero por falta de tiempo, escuelas muy costosas y la fata de recursos, hoy estoy aprendiendo gracias a tus vídeos, Te agradezco sinceramente el tiempo que dedicaste a esto.
jose de Jesus Briseño Eso es cierto. En la escuela dan lo básico. Nosotros por nuestra propia cuenta tenemos que complementar ese conocimiento de manera auto-didacta.
Saludos!!!
Como dicen no hay edad para aprender, Mejor que ir a un Instituto, estudie en Sao Paulo, Brasil,
y se me complico un poco Excel pero con sus vídeos hoy estoy re aprendiendo gracias a sus vídeos,
Muy buenos tutoriales, le agradezco y felicito por tu trabajo que comparte. Un saludo desde La Paz, Bolivia.
Mil gracias Maestro... Hoy es domingo de aprender excel, y este es el primero!!! Me encantó!! Vamos por el 3!!!! Estoy recopilando una serie de dudas, a medida que voy viendo los videos... cuando tenga bastantes te voy a consultar. Gracias.
Por supuesto!
:)
Este es el curso de VBA que estaba buscando GRACIAS !!! saludos desde Mérida
Muchas gracias al principio fue un poco dificil sobre todo porque no se nada de codigo pero ya he ido entendiendo...
Lo mejor de lo mejor...muy buenos vídeos y metodológica ...
Lo felicito, sus conocimientos que a compartido a través de estos vídeos me han sido de mucha ayuda en mi proyecto de gestión de devoluciones.
Otto, te felicito pues todos tus vídeos relacionados con Excel son claro, preciso y muy educativo, gracias por hacerlo. Si en puede y deseas construye un sistema de facturación desde un formulario de VBA y controla el número de factura y todos sus por menores.
excelente vídeo, quería aprender las macros pero nadie lo explicaba desde 0
Excelentes aportes mi estimado, un saludo muy cordial desde Guatemala.. Bendiciones.
Como siempre muy buena la explicacion Gracias sigo viendo sus vídeos que son interesantes. Gracias
Otto!, este video está súper, nos das excelentes y muy útiles tips, te agradezco infinitamente!!!! Excelente año 2017:)
Javier, en serio es muy didáctico, muchas gracias por compartir esta información te agradecería uno que enseñe como seleccionar un rango de celdas para luego copiarlas en otra hoja e calculo por ej de A1 a AZ1 y lueo que con un click pueda pasar a reemplazarlas con el rango A2 a AZ2 y así sucesivamente.
Me sirvió de mucho amigo Otto. Saludos!!!!
Muy buenos tutoriales, te agradezco y felicito por tu trabajo que compartes.
Buen dia, muy buenos temas, muy bien explicados, muy buena y util la informaciòn
Has sido mi salvacion otto, te felicitoª
Lázaro Reyes Eso me alegra muchísimo. Me alegra haberte ayudado.
Saludos!!!
Felicitaciones. Este video es muy didáctico. Una sugerencia es que le coloques NÚMERO a sus videos, de esa manera sabemos cual es el orden para verlos no le parece? genial para los que no sabemos nada de Visual Basic y somos profesores, como aprender a programar "cosas" que nos sirvan para nuestro trabajo. Sus videos son excelentes, felicitaciones.
Gracias por el tutorial me veré todos vídeos
tienes nuevo supp :D
+Dioces Ce Bienvenido!
exelente video me gustan tus tutoriales especialmente word y exel pondras videos de programacion en visual basic para crear progrmas
exelentes videos!! Gracias!! muy buena la explicación... Gracias
Lidia Torres Gracias por comentar... Bienvenida al canal. Saludos. xD
Profesor OTTO tambien se puede usar para salto de linea
vbNewLine 👌👌👍👍😎😎
Eres el mejor ¡¡¡ Men
Gracias por tus videos tan didácticos. Hazme el favor y explica cómo se hace para trabajar con el argumento HelpFile y el Context.
Gracias por compartir, ademas, con esa claridad
excelente video Otto
muy buenos videos, muchas gracias
Great Stuff easy to follow !
You have a gift
God bless you.
Es buenisimo el tutorial, gracias. habria la posibilidad de crear macro en for next u otro, que haga ingresar datos mediante formulario solo 5 veces por decir y que me grabe en hoja excel, despues de 5 veces , nuevamente inica el ciclo asi ....?? gracias, no es el tema del video, pero disculpe
Buenos dias, Señor Otto, Permita felicitarle por compartir sus conocimientos en Excel, solo que le queremos preguntar como le haria para que el input box funcione en varias celdas como si fuera una lista decendente, y felicitaciones por su canal de antemano se lo agradeceriamos mucho
Gracias por tus videos, consulta, porque a veces se concatena con "&"' y otras veces con "+", agradecere mucho tu respuesta.
buena explicacion gracias!
Buen video, gran explicación, tengo una duda acerca de cuando se le asigna valores a las variables después de ser declaradas, he visto algunas líneas de código que empienzan asignando el valor con la palabra "Set", por ejemplo,
*Set mivariable = "Valor para la variable""*, y en otra linas de código veo que simplemente se le asigna valor a la variable con el signo "=", me pregunto si si hay alguna diferencia entre los dos metodos, muchas gracias.
Excelente!! Es como usted dijo, ya está, lo digité escribiendo nuevamente y ya no aparece el Error 1004. Gracias.
CUAL ES LA SOLUCION???
Hola ***** espero aprender este curso de EXCEL VBA...es la primera vez q estudio y quiero ser un buen programador :D...............
en tus tutoriales quiero saber si explicas sobre las variables la funcion IF THEN ELSE, SELECT CASE, MSGBOX,
porfavor ayúdame cualquier incomodidad..........gracias saludos desde Lima-Perú
hey tengo una duda, quiero hacer una macros para que grafique pero no con una grafica normal si no que si el valor es 5 que me llene de color 5 celdas de una fila o columna
que chevere y muy informativo
FERNANDO SANTIAGO BRAVO CASTAÑEDA Me alegra que te guste. Saludos!!!
buenas tengo una duda como hago para cuando yo uso el el inputbox me salga debajo inputbox, title, default etc ya que cuando digito se me ase dificil el ingresar las varientes y datos adems este sirve como guia
Hola Otto, como se haría el manejo de excepciones? es decir si lo que necesito es ingresar un numero entre 0 y 15 por ejemplo y de un mensaje de error si se ingresa algo no permitido?
Saludos desde Costa Rica.
Buenísimo, felicidades!!!!
Buenas Tardes. estoy realizando un Doc. en Excel el cual quiero que me arroje un correlativo (numero secuencial) al momento de abrirlo. lo estoy realizando por medio de Visual Basic funciona pero no quiero que me salga el cuadro de pregunta. Ahora bien como puede realizar el correlativo sin usar el cuadro de pregunta?
Es posible que la variable que se ingrese en el inputBox realice una acción en el woorkbook?, ejemplo, abrir una hoja específica. Gracias por el vídeo!. Saludos.
Una Preguntita por que será que en Mí Programa Excel no me da la Pestaña "DESARROLLADOR", no se que es lo que pase, si me pudieras Echar la Mano te lo Agradecería... Felicidades por tus Tutoriales
crigone Hola... gracias por comentar... sigue estos pasos para activar la pestaña desarrollador:
Clic en... Archivo> Opciones> Personalizar Cinta de Opciones... Y en la lista de la derecha del cuadro de diálogo encontrarás todas las pestañas, en las cuales, está la pestaña desarrollador deshabilitada. Haz clic en la casilla de verificación y da aceptar. LISTO... ya tienes la pestaña desarrollador.
Muchas Muchas Gracias Sr. Otto es Usted Muy Amable Gracias Nuevamente
OTTO BUENAS TARDES, EXCELENTE TU CANAL, UNA PREGUNTA QUE CODIGO USO PARA QUE CUANDO REGISTRE DATOS NO ME INSERTE UNA FILA SINO QUE SALTE DIRECTO A UNA CELDA, EL INSERTROW ME INSERTA UNA FILA NUEVA Y ESO NO ES LO QUE QUIERO, GRACIAS POR TU ATENCION.
Una consulta que pasa cuando ejecuto esta macro y cuando aparece el cuadro entrada de datos, me pregunta ingrese su nombre y todo lo demas, no ingreso dato alguno y presiono cancelar, me sale error de depuracion, como podria solucionar eso, porfavor ayudeme
EL ELEGIDO MATAO Utiliza un manejador de Errores, mira este ejemplo:
Private Sub Ejemplo()
On Error GoTo Errores
'AQUÍ VA TODO EL CÓDIGO TUYO
Errores:
Msgbox "Debe ingresar Datos"
Exit Sub
End Sub
muchas gracias, es un buen instructor.
Me gusta muchos los videos, Gracias por compartir, tengo una duda, que hacer si queremos que nuestra informacion no se vaya al Activesheet sino a otro tab del mismo archivo??.....gracias
Activesheet se refiere a la hoja activa, tenemos que sustituir esa palabra por el nombre de la hoja que queremos. No el nombre que aparece el tab, sino el nombre interno. En el entorno VBA puedes ver el nombre interno, si tienes una hoja que se llame ventas, su nombre real podría ser Hoja1.
En conclusión tendrías que colocar la sentencia así:
Hoja15.Range("A1") = Texto
La info se va a ir a la hoja 15 o la que tu quieras.
Saludos!
muchas gracias, es mi primer proyecto de programacion y estoy iniciando de 0 , esta super claro, gracias
Thelma Ramirez Tenia esa misma pregunta, pero leyendo los comentarios para no caer en secuencia de realizar la misma pregunta, sin querer tope con esta, Gracias por la respuesta Estimado Otto
Estimado Otto, tus vídeos son muy buenos, en lo personal me han ayudado mucho, tengo una consulta en la parte que adicionas la palabra (Celda) en el lugar de destino activeSheet.Range(Celda) = Texto, dicha palabra no va entre comillas, según mi criterio todo lo que sea texto debe ir entre comillas. Sácame de esta duda por favor.
Jairo Salazar Salazar Hola Jairo, disculpa la tardanza en esta respuesta... Ok respondiendo a tu pregunta. No le pongo comillas ya la Celda es una variable de tipo String (cadena de texto), es por eso que no se le pone comillas. Sin embargo si se tratara de un nombre de Rango, o sea que si le pongo nombre a una celda y por casualidad le pongo Celda, en ese caso si tengo que ponerlo entre comillas ya que no estoy trabajando con una variable sino con un rango.
Saludos!!!
Muchas gracias por los videos maestro, tengo una pregunta: si deseo pornerle la edad, la declaro con
Dim Edad As Integer
Y abajo hago los mismos pasos del inputbox, mi duda es como lo validaría?? Es decir con
Activesheet.range(??) = ????
Ayudeme por favor
Arturo Araucano Sí, puedes seguir los mismos pasos. Pero la variable edad es mejor que la declares como Byte, ya que para ello no necesitas tanto espacio, ya que una edad solo utiliza hasta 2 dígitos.
Saludos!!!
Excelente video
Sr. Otto Gonzáles, tengo una duda cuando estoy desarrollando una Macros en Excel, aparece un recuadro que dice "error 1004" y no me deja seguir avanzando con la Macros, trato de continuar con la Macros y nada, sigue marcando "Error 1004", como si fuera una habilitación errónea. Por favor si puede vea a que se debe, porque no me deja seguir con las Macros.
Magali Aurora Diaz Espino Eso es un error cuando intentas copiar y pegar datos filtrados.
Cuál es tu versión de excel?
***** Trabajo con Excel 2010 pero no parece ser lo que dice, voy a intentar empezar a colocar los datos de nuevo.
Buenas noches mi estimado Otto, observo que en la ventana de proyecto, las instrucciones para una macro tipo Private no recae en un MODULO ESTANDAR.
Esto es normal?
buenos videos, trata de mejorar la calidad de imagen
Está genial el tutorial. Necesitaba algo como esto. Tengo una duda +ottojaviergonzalez. Hago el ejemplo mientras veo el vídeo pero a mí me sale un error que dice:
"Error de compilación
Se esperaba: fin de la instrucción"
y lo estoy escribiendo tal y como está en el video. Espero que no te moleste mi duda, soy un usuario no tan avanzado pero necesito aprender esto, y ya me pasó que otro youtuber me dijo que necesitaba buscar otro tutorial a mi nivel :( espero puedas ayudarme.
Buenas noches Otto. Nuevamente te molesto con una duda, practicando el InputBox, con ejemplos mios. Estoy trabajando con numeros de 4 digitos y declare la variable como integer, si le pongo el numero y le doy en Aceptar, lo todo hace bien, pero si le doy en Cancelar me dice: Se ha producido el error '13' en tiempo de ejecucion: No coinciden los tipos
Como soluciono esto? Mil gracias de antemano. Saludos desde Mexico
+Sergio Ramos .-Probablemente ya resolviste tu problema , por si no es así y por si alguien más tiene el problema actualmente, quiero ayudar en esto.
sólo hay que agregar la siguiente instrucción inmediatamente después de la llamada al "InputBox"
If (variable) = Empty Then Exit Sub
ó , en su defecto
If (variable) = Empty Then GoTo (linea)
Donde (variable): es la variable que propiamente estás utilizando
y (linea): es una etiqueta de linea que tendrás que poner en el lugar a donde quieres que se haga el salto de instrucciones
Cabe mencionar que esto lo he aprendido siguiendo los videos de Otto y de algunos instructores más que; cómo El, son muy buenos con Excel.
Saludos
PD: Un agradecimiento a Otto por compartir sus conocimientos por este medio.
me gustaria saber el significado de cada comando que escribe donde lo puedo encontrar ejemplo el significado de (!Dim o sthing!)
necesita saber un poco lo que es programacion estructurada con lenguaje .net investigue un poco
TIPOS DE DATOS
String es para un dato de texto y siempre va en comillas
INT es un tipo de dato entero para numeros
Double es un tipo de dato real
Decimal para numeros decimales y asi existe muchos
Hago todo lo que dices y me marca un error SUB or Function not Defined, que pordra ser?
Porque no puedo crear variables AYUDA! Cuando creo Dim a as Char, o double, o Integer lo que sea y corro el programa me aparece un error de que "no se ha definido el tipo definido por el usuario" Function NumeroDecMasked(ByVal e As System.Windows.Forms.KeyPressEventArgs, ByVal Text As MaskedTextBox) As Integer . No entiendo por que pasa, hago todo bien y pasa eso, estoy enojado ya. porfavor ayudaaaa
HOLA BUENAS NOCHES LE FELICITO POR SUS VISEOS LA VERDAD HA SIDO DE GRAN AYUDA LE FELICITO,
TENGO UNA PREGUNTA ESTOY HACIENDO UN PROGRAMA EN EL CUAL TENGO EL BOTON AGREGAR CUANDO LE DOY CLIC EN AGREGAR NECESITO QUE ABRA UNA NUEVA HOJA, Y SI AGREGO OTRO USUARIO NECESITO OTRA HOJADEL MISMO LIBRO NECESITO AYUDA CON RESPECTO AL CODIGO TENGO UNA IDEA LO INTENTE PERO ME GENERA ERROR POR QUE SOLO ME LO HACE EN LA MISMA HOJA Y YO NECESITO QUE QUE CUANDO LE DE ADD ME AGREGUE UNA NUEVA HOJA Y SI ES MODIFICAR ME LO BUSQUE POR NOMBRE DE HOJA
MUY BUENO...
Buenas noches, excelente explicación, ahora como seria para restringir el inputbox para que no lo dejen en blanco? para obligar a que escriban algo?? yo utilice un condicional de la siguiente manera:
If nh = "" Then
MsgBox "No puede dejar en blanco el nombre de la hoja", vbCritical
Else
ActiveSheet.name = nh
ActiveSheet.Range("K6") = nh
MsgBox "Hoja " & nh & " creada"
End If
Donde nh es la variable donde estoy asignando lo que se introduce en el inputbox, ahi me muestra el mensaje de error pero al darle aceptar se sale y deja todo tal cual como quedo. Para ponerlo en contexto con un boton estoy copiando y pegando una hoja de excel dentro del mismo libro y adicionalmente solicito mediante el inputbox que se le asigne el nombre a la nueva hoja, no quiero que salga el nombre que le asigna excel automaticamente sino el que el usuario desee, pero no quiero que lo deje en blanco.
Bueno ya resolvi, simplemente inclui el comando de copiar y pegar hoja luego del Else de esta manera (Copiare el codigo completo para que lo analicen):
Sub Copiar_Hoja()
Dim resp As Integer
Dim nh As String
resp = MsgBox("Desea crear un nuevo Slide Sheet?", vbYesNo + vbQuestion, "Crear nueva Hoja")
Select Case resp
Case vbYes
nh = InputBox("Por favor asigne un Nombre al nuevo Slide Sheet")
If nh = "" Then
MsgBox "No puede dejar en blanco el nombre de la hoja", vbCritical, "Asignacion de nombre a la Hoja"
MsgBox "Hoja no creada", vbCritical, "Error"
Else
Worksheets(1).Copy Before:=Worksheets("REPORTE FINAL")
ActiveSheet.name = nh
ActiveSheet.Range("K6") = nh
MsgBox "Hoja " & nh & " creada"
End If
Case vbNo
MsgBox "Hoja no creada", vbCritical, "Error"
End Select
BUENOS VIDEOS.....
Cuál es símbolo q divide
Por cierto mi variable si la tengo declarada, como string, porque la necesito como cadena de texto para nombrar la hoja.
Fabricio Ramírez Cifuentes En este ejercicio he declarado las variables como String, ya que lo que ingreso en los InputBox, son cadenas de texto, y cuando creo la variable Celda, es para convertir eso en mi rango de destino.
Gracias.
DONDE DIGITO EL SIMBOLO Q DICES Q ES COMO UNA i ...no lo encuentro
Rodrigo Garsiolo, el simbolo es Amperson, Usado en AND "ingles" y se encuentra en la tecla 6 del teclado
BUENO NO SE VE EN EL VIDEO Q SIMBOLO ES...POR ESO PREGUNTABA...TENGO UN MONITOR VEJETE
En tu teclado es [ ↑ ] (tecla Shift )+[ 6 ] no importa xq es el teclado. :)
Excelente.
Saludos
¿Qué pasa cuando se oprime cancelar y el resultado es falso?
Tengo este código para nombrar hojas de trabajo y solamente se creen en cuanto las valla necesitando
Application.ScreenUpdating = False
nomgroup = InputBox("ESCRIBE EL NOMBRE DE LA HOJA", "LISTA ALMANEGRA")
If nomgroup "Falso" Then
Sheets("GRUPO").Visible = True
Sheets("GRUPO").Select
Sheets("GRUPO").Copy Before:=Sheets(1)
Sheets("GRUPO (2)").Name = nomgroup
Sheets("GRUPO").Visible = False
Sheets("NUEVA LISTA").Select
Application.ScreenUpdating = True
End If
End Sub´
Así solucioné para cuando se le da en cancelar. Pero si estuviera en inglés, no funcionaría. ¿Cómo hago para que si el resultado es " false", no me cree la hoja con el nombre "false".
¡Gracias!
Fabricio Ramírez Cifuentes Perdona, pero no comprendo lo que quieres hacer con este código. No le encuentro coherencia. Explícame al detalle.
Y yo que ya me creía todo un programador por usar ctrl + c y ctrl + v 😔😫
excelente profesor , pero me parece q hay algo malito o me equivoco,,,,lugar de decir "seleccione la celda destino", deberia decir "escribir la celda destino" no cree usted??...ya q seleccionar supongo es hacer clic en la celda .............ummmmmmmmm despues mi profe todo bien...grxs..cuidese ps
Gracias por comentar xD
Saludos!
No estas explicando como funcionan las funciones, yo no entiendo.
🦾🦾✔✔👍👍👌👌👀👀🤗🤗😎😎🍺🍺🍺🍺🍺🍺
22.38.07.01
excelente vídeo, quería aprender las macros pero nadie lo explicaba desde 0