Jump to content

chencholf

Members
  • Content Count

    49
  • Joined

  • Last visited

About chencholf

  • Rank
    Member

Contact Methods

  • MSN Array

Profile information

  • Gender Array
  • Localización: Array

Converted

  • Campos Array

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Si al final es así, yo en mi trabajo, aunque no tiene mucho que ver, siempre doy mi opinión de la mejor manera de hacer las cosas. Luego los jefes (el que paga) son los que deciden, y tu lo haces lo mejor que puedes pero de la forma que te digan, aunque no sea la mejor. Bueno, por si a alguien le sirve, el código para poder andar los textbox libremente es este: Private Sub Texto1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto2.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto2.Activate If KeyCode = vbKeyUp Then Texto6.Activate End Sub Private Sub Texto2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto3.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto3.Activate If KeyCode = vbKeyUp Then Texto1.Activate End Sub Private Sub Texto3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto4.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto4.Activate If KeyCode = vbKeyUp Then Texto2.Activate End Sub Private Sub Texto4_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto5.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto5.Activate If KeyCode = vbKeyUp Then Texto3.Activate End Sub Private Sub Texto5_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto6.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto6.Activate If KeyCode = vbKeyUp Then Texto4.Activate End Sub Private Sub Texto6_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyReturn Then Texto1.Activate 'If keycode es = a 13 tambien es enter If KeyCode = vbKeyDown Then Texto1.Activate If KeyCode = vbKeyUp Then Texto5.Activate End Sub Saludos y gracias de nuevo
  2. Buenas de nuevo, primero que nada muchas gracias a ambos. Leopoldo, esto ha funcionado perfecto! En cuanto a lo que comentáis, estoy de acuerdo con ambos en realidad. El problema es que ahora estoy aprendiendo y en realidad a veces no se que quiero, o que puede ofrecerme el programa, las ventajas y desventajas de cada forma de hacer las cosas. Seguramente lo mejor, como decís es el formulario, que para eso está, pero bueno, me agrada ver que también se puede hacer de este modo más en plan casero. Me gusta tener esa elección, aunque escoja mal, voy a seguir de momento así y a ver... Muchas gracias, la verdad que me está costando mucho vba, pero es muy gratificante cuando las cosas funcionan.
  3. Vaya, es curioso que siendo casi lo mismo te limite de esa forma, gracias por la aclaración. El problema que le veo al formulario es que tengo que poner un botón para que salga, y de este modo lo tengo todo nada más entrar al archivo. También es como que el formulario te captura mientras está activo, y haciendolo en la página es como que estás más libre, no se... quizás es tontería mia y lo mejor sea el formulario.
  4. Buenas, he estado dándole vueltas mucho rato pero no encuentro la manera. Tento 6 textbox en la hoja1, y quiero que cuando escribo en uno y pulso enter me pase al siguiente. Supongo que debe ser algo sencillo, pero no doy con la tecla... he estado probando setfocus pero creo que no sirve fuera de un userform, cosas con Char(13)... pero no . Adjunto el archivo a ver si alguien puede ayudarme. Muchas gracias. PhenomToFtsConverter0.7.xlsm
  5. Vale, ya entiendo, el tema era definir la variable publica en el módulo y no en la página. Echaré un vistazo al archivo que adjuntas. Muchas gracias!
  6. Buenas, me está costando entender como funcionan los textbox, a ver si me podéis ayudar un poco. A ver, tengo unos textbox que he creado directamente sobre la hoja1, y quiero usar el valor que se ingrese en ellos en un módulo. Por lo que veo, al parecer cuando creas los textbox sobre una hoja es como que están asociados a la misma. He guardado los datos de los textbox en variables, y declarándolas como public encima de las funciones, he conseguido poder usarlas en todas las funciones, siempre que sea dentro de la hoja1. Mi pregunta es, ¿podría llamar a esas variables desde un módulo o solo pueden usarse en el código de la página donde existe el textbox? de momento la idea que se me había ocurrido era guardar los textbox en celdas y luego desde el módulo crear unas variables con el valor de esas celdas, así es como si las celdas fuesen variables globales... en fin, así funciona, pero me gustaría saber como se hace bien. Saludos y gracias por cualquier aclaración que podáis darme, estoy empezando con el aprendizaje de vba y la verdad que me está costando un poco consigo usarlo en diferentes funciones, siempre que esten dentro de la Hoja
  7. Ahora sí, perfecto... Muchisimas gracias! Sub pegarDatos() Dim hayDatos As Byte hayDatos = Application.CutCopyMode If hayDatos = 1 Then ActiveSheet.Paste Else MsgBox ("No hay contenido copiado. Copia antes de pegar.") End If Application.CutCopyMode = False End Sub
  8. Bueno, a ver, me acerco a la resolución... Sub pegarDatos() On Error Resume Next ActiveSheet.Paste MsgBox ("No hay contenido copiado") Application.CutCopyMode = False End Sub De este modo consigo que cuando me da el error, aparece una ventana que me dice que no hay contenido copiado. El problema es que cuando se ejecuta bien, sin error, después de pegar el texto, también me aparece el mensaje
  9. Buenas, quiero crear un código para pegar los datos que tenga copiados en una hoja de otro libro. De momento funciona casi bien, o sea, yo voy a Libro1 y copio los datos, vengo a Libro2, le doy a mi botón que contiene el código que voy a mostrar a continuación y funciona, lo pega donde quiero. Cual es el problema entonces?... pues que si el usuario no tiene el texto copiado y pulsa el botón, el programa da un error. Me gustaría que si esto ocurre, el programa no muestre error, simplemente no se ejecute, o que muestre un mensaje. La solución entiendo que sería hacer un "If el portapapeles está vacío" pero no se como hacerlo. Desde ya, gracias por la ayuda u orientación que podáis darme. Salu2 Sub pegarDatos() ActiveSheet.Paste Application.CutCopyMode = False End Sub
  10. Bueno, voy a adjuntar la tabla para que se vea un poco más claro lo que trataba de explicar. Cómo veréis hay una columna que muestra el Grand Total por cada fila, y como los datos están en average, lo que me muestra es el average. Justo al lado, con el titulo amarillo, he tenido que calcular el Total, la suma, que es lo que necesito, pero al estar calculado fuera de la tabla, el gráfico no lo coge. gracias! PlantillaEnproceso.xlsx
  11. Muy buenas, tengo un problemilla con una tabla dinámica, a ver si alguien me puede indicar un poco. Resulta que en mi tabla dinámica tengo los valores para que se muestren como promedio/average, pero luego el Grand Total me gustaría que me mostrase la suma de todos los valores y no el promedio. ¿Es esto posible? ¿o hay alguna otra forma de hacerlo? Yo lo he probado a hacer a parte, en una nueva columna, pero al insertar un gráfico para la pivot table solo me coge los datos de dentro de la propia tabla. No se si me he sabido explicar. Un saludo y muchas gracias! P.D. mi idea es hacer un gráfico combinado, que muestre las barras con los promedios por cada fecha y un grafico de linea que muestre los totales, esto se como hacerlo, pero necesito sacar los totales con la pivot
  12. Muchas gracias, voy a probarlo. Aj. No me rula. He intentado grabando macros, pero al parecer no se graban las cosas tipo "abrir menus", etc...
  13. Buenas, a ver si me podéis echar un cable; quiero crear un botón en una celda, que al pulsarlo haga lo mismo que si vamos a la cinta de opciones, a data, y pulsamos en edit links. Vamos lo que sería crear un atajo a "edit links". Muchas gracias!
  14. Vale, no me hagáis caso.... no era cosa del gráfico, acabo de descubrir lo que pasa. La tabla de graficos me cogía los datos de otro sitio, y yo le decía que cuando en ese otro sitio no hubiese dato me dejase la celda vacía "", mientras que lo que tenía que decirle es que me dejase la celda como NA(). Si queréis podéis borrar el hilo. Gracias.
×
×
  • Create New...

Important Information

Privacy Policy