Ayuda con Filtros y otras herramientas
Reglas del Foro
Los moderadores podrían mover los temas creados aquí a un foro más apropiado.
Si usted publicó aquí y no encuentra el tema, puede buscar sus mensajes haciendo clic en la opción «Buscar sus mensajes» que se encuentra justo debajo de la cabecera de la página, junto al panel de control de usuario y al acceso a sus mensajes privados.
Los moderadores podrían mover los temas creados aquí a un foro más apropiado.
Si usted publicó aquí y no encuentra el tema, puede buscar sus mensajes haciendo clic en la opción «Buscar sus mensajes» que se encuentra justo debajo de la cabecera de la página, junto al panel de control de usuario y al acceso a sus mensajes privados.
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Ayuda con Filtros y otras herramientas
Hola a todos, antes que nada quiero felicitarlos por el foro, muy completo y muy útil. Este es mi segundo post y de seguro va a tratar de consultas.
He subido un archivo zip (ya que el original superaba el límite permitido).
Como verán, tengo algunas cuestiones con los macros, he hecho algunos intentos pero no he logrado importarlos, ya que soy nuevo con estas herramientas.
Pero bueno, creo que hay algunas notas claras sobre los botones que ejecutan las macros y sobre algunas funciones. Espero que sea claro...
Lo que quiero lograr acá en principio es trabajar con filtros...
1) Necesito aplicar un filtro que se establezca desde una FECHA hasta otra fecha (o sea, un período, por ej 01/09/12 - 30/09/12, o "SEPTIEMBRE", etc), para que me muestre solo las filas que comprenden entre las fechas que se establezcan.
2) Después necesitaría que sobre los resultados que arroja el primer filtro poder aplicar un segundo filtro en la columna BANDA, muestre solo lo que se tipee en algún campo para rellenar o se seleccionen.
Si pudieran darme algunas pistas sobre como hacerlos, se los agradecería....
Una vez arrojados los resultados (las filas correspondientes) quiero pensar que datos y como quiero trasladar a una segunda hoja llamada PARA FACTURAR. Sugerencias bienvenidas...
Muchas Gracias!!!
He subido un archivo zip (ya que el original superaba el límite permitido).
Como verán, tengo algunas cuestiones con los macros, he hecho algunos intentos pero no he logrado importarlos, ya que soy nuevo con estas herramientas.
Pero bueno, creo que hay algunas notas claras sobre los botones que ejecutan las macros y sobre algunas funciones. Espero que sea claro...
Lo que quiero lograr acá en principio es trabajar con filtros...
1) Necesito aplicar un filtro que se establezca desde una FECHA hasta otra fecha (o sea, un período, por ej 01/09/12 - 30/09/12, o "SEPTIEMBRE", etc), para que me muestre solo las filas que comprenden entre las fechas que se establezcan.
2) Después necesitaría que sobre los resultados que arroja el primer filtro poder aplicar un segundo filtro en la columna BANDA, muestre solo lo que se tipee en algún campo para rellenar o se seleccionen.
Si pudieran darme algunas pistas sobre como hacerlos, se los agradecería....
Una vez arrojados los resultados (las filas correspondientes) quiero pensar que datos y como quiero trasladar a una segunda hoja llamada PARA FACTURAR. Sugerencias bienvenidas...
Muchas Gracias!!!
- Adjuntos
-
- SUBIR EJEMPLO AYUDA.ods.zip
- (97.66 KiB) Descargado 223 veces
NeoOffice 3.1.2 con MacOS 10.6.8
Re: Ayuda con Filtros y otras herramientas
Parece que las macros no acompañan al fichero. Al menos yo no las veo, ni puedo ejecutarlas.
Sugiero estructurar los datos y no mezclarlos con cálculos (o lo menos posible). Particularmente segmentaría la hoja "servicios"
- hoja para entrada de datos: /FECHA /BANDA /HORAS /TURNO /PROMO /SERVICIOS_BL /H.GRAB. /ENSAYOS /H_INGRESO /H_EGRESO (no su diferencia ni otros cálculos) ..
- hoja con tarifas, servicios, tablas descuentos ... de aquí se tomarán los valores para los cálculos
- hoja para cálculos
- hoja(s) de salida tal como queramos visualizarlos. Normalmente los de entrada más otros calculados. (p.ej.Fecha /Día_S ... /Horas/ H_entrada /H_salida /Exceso ...)
Sugiero estructurar los datos y no mezclarlos con cálculos (o lo menos posible). Particularmente segmentaría la hoja "servicios"
- hoja para entrada de datos: /FECHA /BANDA /HORAS /TURNO /PROMO /SERVICIOS_BL /H.GRAB. /ENSAYOS /H_INGRESO /H_EGRESO (no su diferencia ni otros cálculos) ..
- hoja con tarifas, servicios, tablas descuentos ... de aquí se tomarán los valores para los cálculos
- hoja para cálculos
- hoja(s) de salida tal como queramos visualizarlos. Normalmente los de entrada más otros calculados. (p.ej.Fecha /Día_S ... /Horas/ H_entrada /H_salida /Exceso ...)
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Re: Ayuda con Filtros y otras herramientas
Hola xiseme, muchas gracias por tu respuesta, antes de aventurarme a desglosar los datos y los cálculos, hay manera de crear el tipo de filtros que pretendo sobre el esquema que armé?
Reconozco que hay muchos datos, ya sea de carácter informativo y de cálculos, pero es más o menos de la manera que me entiendo yo, quién seré el usuario de ese documento.
Si no existe manera, bueno, lo proyectaré como decís vos y tendré que "cranearlo" nuevamente.
Saludos!
PD: Las macros solo insertan costos , excepto por los dos últimos botones, que insertan tiempo.
Reconozco que hay muchos datos, ya sea de carácter informativo y de cálculos, pero es más o menos de la manera que me entiendo yo, quién seré el usuario de ese documento.
Si no existe manera, bueno, lo proyectaré como decís vos y tendré que "cranearlo" nuevamente.
Saludos!
PD: Las macros solo insertan costos , excepto por los dos últimos botones, que insertan tiempo.
NeoOffice 3.1.2 con MacOS 10.6.8
Re: Ayuda con Filtros y otras herramientas
No siendo yo muy manejador de filtros ... seguro que se puede filtrar.
Seleccionando rango A10:AE375 (tus datos+calculos+resultuados)
Menú → Datos → Filtro → Autofiltro
Si luego en el pulsador de columna A10 opción filtro predeterminado elegimos FECHA >=XXYYZZ y < FECHA < AABBCC ...
Haz una búsqueda en el foro, hay hilos al respecto de filtros en los que seguro que están maneras de completar su funcionalidad.
Seleccionando rango A10:AE375 (tus datos+calculos+resultuados)
Menú → Datos → Filtro → Autofiltro
Si luego en el pulsador de columna A10 opción filtro predeterminado elegimos FECHA >=XXYYZZ y < FECHA < AABBCC ...
Haz una búsqueda en el foro, hay hilos al respecto de filtros en los que seguro que están maneras de completar su funcionalidad.
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Re: Ayuda con Filtros y otras herramientas
Hola
No he tenido oportunidad de ver los datos, pero si lo que necesitas es filtrar, aquí tienes toda la información necesaria, ordenada y con ejemplos. Filtrar celdas en OpenOffice Calc
Para tu caso recomiendo que utilices el filtro avanzado, pero con el filtro automático también puedes conseguir lo que precisas, quizás de forma más sencilla.
Si utilizas el filtro avanzado, y quieres establecer un rango de fechas, tendrás que crear dos columnas Fecha en el área de condiciones.
Saludos
No he tenido oportunidad de ver los datos, pero si lo que necesitas es filtrar, aquí tienes toda la información necesaria, ordenada y con ejemplos. Filtrar celdas en OpenOffice Calc
Para tu caso recomiendo que utilices el filtro avanzado, pero con el filtro automático también puedes conseguir lo que precisas, quizás de forma más sencilla.
Si utilizas el filtro avanzado, y quieres establecer un rango de fechas, tendrás que crear dos columnas Fecha en el área de condiciones.
Saludos
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Re: Ayuda con Filtros y otras herramientas
Hola nuevamente. Ahora armé el cuadro más o menos como me sugirió xiseme...
Donde...
1) La hoja SERVICIOS QUEDO INTACTA a excepción porque saque los botones y la mantuve simplemente para observarla y ver que datos me interesaba mover o modificar...
2) En la hoja ENTRADA DATOS, solo la uso para escribir manualmente en las columnas: A, B, C, E, de la F a la M (SECCION BACKLINE), N, P y Q.
(YA SEGMENTARE ESTE PUNTO PARA RESOLVER ALGUNAS CUESTIONES CON LOS MACROS, PERO TODO A SU TIEMPO)
3) En la hoja TARIFAS Y TABLAS, tengo los valores correspondientes a cada servicio o "producto". De donde tomo algunos valores para la última hoja.
4) En la hoja CALCULOS, son algunos cálculos simplemente referenciales (no se si este era el objetivo de la misma) , pero también tomo algunos datos de acá para la última hoja.
5) En la hoja SALIDA DATOS, es donde resuelvo todas las fórmulas como para imprimir una factura con todos esos detalles, que son los que me interesan tener como comprobante.
Verán que utilicé mucho la función =SI, y llamé a muchas referencias. Es de la forma autodidacta que pude lograr esos resultados.
Ahora a desglosar.....
En la hoja ENTRADA DATOS, quiero utilizar macros que por ejemplo en la la columna A permita insertar la fecha actual, pero que vaya insertando la fecha únicamente en esa columna e inmediatamente después de la última entrada registrada, me explico? más importante aún, estoy delirando??? jaja. Lo mismo para el resto de las columnas, excepto por la columna C, en donde tengo que tipear manualmente un nombre, en la columna N solo tiene que marcar la palabra "SI" y bueno un botón para las horas de entrada y las horas de salida.
Ahora me gustaría que evalúen si estoy muy lejos de un proyecto real. Después tengo que implementar una manera de llevar los datos seleccionados de la 1ra hoja a la última para generar algún tipo de factura personalizada y no que todas tengan "x" cantidad de filas por igual. Sino que se vayan sumando las filas correspondientes en la hoja SALIDA DATOS.... Es posible???? repito.... estoy delirando????
Muchas Gracias por su tiempo y ayuda!
Donde...
1) La hoja SERVICIOS QUEDO INTACTA a excepción porque saque los botones y la mantuve simplemente para observarla y ver que datos me interesaba mover o modificar...
2) En la hoja ENTRADA DATOS, solo la uso para escribir manualmente en las columnas: A, B, C, E, de la F a la M (SECCION BACKLINE), N, P y Q.
(YA SEGMENTARE ESTE PUNTO PARA RESOLVER ALGUNAS CUESTIONES CON LOS MACROS, PERO TODO A SU TIEMPO)
3) En la hoja TARIFAS Y TABLAS, tengo los valores correspondientes a cada servicio o "producto". De donde tomo algunos valores para la última hoja.
4) En la hoja CALCULOS, son algunos cálculos simplemente referenciales (no se si este era el objetivo de la misma) , pero también tomo algunos datos de acá para la última hoja.
5) En la hoja SALIDA DATOS, es donde resuelvo todas las fórmulas como para imprimir una factura con todos esos detalles, que son los que me interesan tener como comprobante.
Verán que utilicé mucho la función =SI, y llamé a muchas referencias. Es de la forma autodidacta que pude lograr esos resultados.
Ahora a desglosar.....
En la hoja ENTRADA DATOS, quiero utilizar macros que por ejemplo en la la columna A permita insertar la fecha actual, pero que vaya insertando la fecha únicamente en esa columna e inmediatamente después de la última entrada registrada, me explico? más importante aún, estoy delirando??? jaja. Lo mismo para el resto de las columnas, excepto por la columna C, en donde tengo que tipear manualmente un nombre, en la columna N solo tiene que marcar la palabra "SI" y bueno un botón para las horas de entrada y las horas de salida.
Ahora me gustaría que evalúen si estoy muy lejos de un proyecto real. Después tengo que implementar una manera de llevar los datos seleccionados de la 1ra hoja a la última para generar algún tipo de factura personalizada y no que todas tengan "x" cantidad de filas por igual. Sino que se vayan sumando las filas correspondientes en la hoja SALIDA DATOS.... Es posible???? repito.... estoy delirando????
Muchas Gracias por su tiempo y ayuda!
- Adjuntos
-
- SUBIR EJEMPLO AYUDA.ods.zip
- (90.81 KiB) Descargado 193 veces
NeoOffice 3.1.2 con MacOS 10.6.8
Re: Ayuda con Filtros y otras herramientas
Voy algo apurado por falta de tiempo. Pido disculpas anticipadas por si desvarío un poco.
Como el tiempo invertido en una buena estructuración del proyecto ahorrará quebraderos de cabeza posteriores, pregunto:
- ¿Las horas de instrumento son necesariamente las mismas que de turno o podria llegar a darse que un turno de 4 h. fuesen 2 de inst.X, 3 de Y, 4 de Z?
- El siguiente proceso: 1-Crear cliente 2-Intro.datos de uso 3-Consolidar datos 4-Generar factura ¿es aceptable?
Cerca ... lejos ... todo es tan relativo
... Lo importante es estar en el buen camino. Mi opinión es que sí.
Facturas, tabla de facturas, análisis etc. claro que son posibles.
Perfectamente posible.... pero que vaya insertando la fecha únicamente en esa columna e inmediatamente después de la última entrada registrada ...
Podría también elegirlo de una lista de bandas-cliente si fuera más práctico... columna C, en donde tengo que tipear manualmente un nombre ...
Como el tiempo invertido en una buena estructuración del proyecto ahorrará quebraderos de cabeza posteriores, pregunto:
- ¿Las horas de instrumento son necesariamente las mismas que de turno o podria llegar a darse que un turno de 4 h. fuesen 2 de inst.X, 3 de Y, 4 de Z?
- El siguiente proceso: 1-Crear cliente 2-Intro.datos de uso 3-Consolidar datos 4-Generar factura ¿es aceptable?
Cerca ... lejos ... todo es tan relativo

Facturas, tabla de facturas, análisis etc. claro que son posibles.
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Re: Ayuda con Filtros y otras herramientas
Hola.... Gracias!
Cómo?
[/quote]Podría también elegirlo de una lista de bandas-cliente si fuera más práctico.[/quote]
Podría ser, pero primero quiero tener una "plantilla" clara, por llamarla de alguna manera, para presentar a los clientes. Este servicio todavía no está en marcha, entonces, todavía no hay una lista de clientes...
[/quote]Como el tiempo invertido en una buena estructuración del proyecto ahorrará quebraderos de cabeza posteriores, pregunto:
- ¿Las horas de instrumento son necesariamente las mismas que de turno o podria llegar a darse que un turno de 4 h. fuesen 2 de inst.X, 3 de Y, 4 de Z?[/quote]
Esta situación se puede dar, no sería tan común, pero si se diera, podría ingresarse el número manualmente...
[/quote]- El siguiente proceso: 1-Crear cliente 2-Intro.datos de uso 3-Consolidar datos 4-Generar factura ¿es aceptable?
Cerca ... lejos ... todo es tan relativo
... Lo importante es estar en el buen camino. Mi opinión es que sí.
Facturas, tabla de facturas, análisis etc. claro que son posibles.[/quote]
Como podría generar la factura desde SALIDA DATOS?
Saludos!
[/quote] Perfectamente posible.[/quote]... pero que vaya insertando la fecha únicamente en esa columna e inmediatamente después de la última entrada registrada ...
Cómo?
.. columna C, en donde tengo que tipear manualmente un nombre ...
[/quote]Podría también elegirlo de una lista de bandas-cliente si fuera más práctico.[/quote]
Podría ser, pero primero quiero tener una "plantilla" clara, por llamarla de alguna manera, para presentar a los clientes. Este servicio todavía no está en marcha, entonces, todavía no hay una lista de clientes...
[/quote]Como el tiempo invertido en una buena estructuración del proyecto ahorrará quebraderos de cabeza posteriores, pregunto:
- ¿Las horas de instrumento son necesariamente las mismas que de turno o podria llegar a darse que un turno de 4 h. fuesen 2 de inst.X, 3 de Y, 4 de Z?[/quote]
Esta situación se puede dar, no sería tan común, pero si se diera, podría ingresarse el número manualmente...
[/quote]- El siguiente proceso: 1-Crear cliente 2-Intro.datos de uso 3-Consolidar datos 4-Generar factura ¿es aceptable?
Cerca ... lejos ... todo es tan relativo

Facturas, tabla de facturas, análisis etc. claro que son posibles.[/quote]
Como podría generar la factura desde SALIDA DATOS?
Saludos!
NeoOffice 3.1.2 con MacOS 10.6.8
Re: Ayuda con Filtros y otras herramientas
Entiendo entonces, que en realidad, cada fila es en realidad una suma de varias "ventas": un lote de horas-turno + instr.A + instr.X + grab + recargo + ... cada una con sus cantidades, descuento y precio.
Las pones en una fila solo para confundirme (es broma
) o (1)es absolutamente necesario que sea así?
Lo habitual es que una fra. tenga una disposición como
Factura: 123 PepeLuis
Detalle Fra---------------------------------------
1- prod.1 -descrip.1 -precio.1 -dtos.1 -importe.1
2- prod.2 -descrip.2 -precio.2 -dtos.2 -importe.2
3- prod.3 -descrip.3 -precio.3 -dtos.3 -importe.3
... ... ... ...
-----------------------------total base
-------------------------dtos.globales
-----------------------------impuestos
------------------------------------total
De tal forma que mi idea es una hoja de entrada de datos al gusto, una macro que ponga esos datos en una lista-origen-de-datos tal que
num.Fra | fecha | cliente | lin.fra | prod | descripión | precio | dto | ... | ... |
| 123 | fechaa | PepeLuis | 1 | prod.1 | descrip.1 | precio.1 | dtos.1 | importe.1
| 123 | fechaa | PepeLuis | 2 | prod.2 | descrip.2 | precio.2 | dtos.2 | importe.2
| 123 | fechaa | PepeLuis | 3 | prod.3 | descrip.3 | precio.3 | dtos.3 | importe.3
| 124 | fechab | JuanJuan | 1 | prod.1 | descrip.1 | precio.1 | dtos.1 | importe.1
| 124 | fechab | JuanJuan | 2 | prod.2 | descrip.2 | precio.2 | dtos.2 | importe.2
para tomarlos de ella para imprimir las facturas.
A ver si encuentro tiempo para adjuntar alguna idea al respecto.
Señalo que tienes productos por horas (a granel) con su precio por hora y otros por unidad (turnos "cerrados") a estos últimos también le pones precio por hora . Visto que tendrás que controlar el exceso de tiempo, hay que tenerlo en cuenta: Turno B cant:3 (no 1) Turno C cant:4 (no 1) . .... de hecho yo les llamaría turno-2 turno-3 y turno-4
Edito: Adjunto una aproximación tosca. Me gustaría saber (1)
Las pones en una fila solo para confundirme (es broma

Lo habitual es que una fra. tenga una disposición como
Factura: 123 PepeLuis
Detalle Fra---------------------------------------
1- prod.1 -descrip.1 -precio.1 -dtos.1 -importe.1
2- prod.2 -descrip.2 -precio.2 -dtos.2 -importe.2
3- prod.3 -descrip.3 -precio.3 -dtos.3 -importe.3
... ... ... ...
-----------------------------total base
-------------------------dtos.globales
-----------------------------impuestos
------------------------------------total
De tal forma que mi idea es una hoja de entrada de datos al gusto, una macro que ponga esos datos en una lista-origen-de-datos tal que
num.Fra | fecha | cliente | lin.fra | prod | descripión | precio | dto | ... | ... |
| 123 | fechaa | PepeLuis | 1 | prod.1 | descrip.1 | precio.1 | dtos.1 | importe.1
| 123 | fechaa | PepeLuis | 2 | prod.2 | descrip.2 | precio.2 | dtos.2 | importe.2
| 123 | fechaa | PepeLuis | 3 | prod.3 | descrip.3 | precio.3 | dtos.3 | importe.3
| 124 | fechab | JuanJuan | 1 | prod.1 | descrip.1 | precio.1 | dtos.1 | importe.1
| 124 | fechab | JuanJuan | 2 | prod.2 | descrip.2 | precio.2 | dtos.2 | importe.2
para tomarlos de ella para imprimir las facturas.
A ver si encuentro tiempo para adjuntar alguna idea al respecto.
Señalo que tienes productos por horas (a granel) con su precio por hora y otros por unidad (turnos "cerrados") a estos últimos también le pones precio por hora . Visto que tendrás que controlar el exceso de tiempo, hay que tenerlo en cuenta: Turno B cant:3 (no 1) Turno C cant:4 (no 1) . .... de hecho yo les llamaría turno-2 turno-3 y turno-4

Edito: Adjunto una aproximación tosca. Me gustaría saber (1)
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Re: Ayuda con Filtros y otras herramientas
Hola xiseme, muchas gracias por el adjunto, realmente tengo que estudiarlo muy bien. A simple vista me cuesta entenderlo, ya que soy bastante nuevo en esto, así supongo que me llevará mi buen tiempo....
Agradezco tu tiempo, porque realmente has replanteado todo, al menos de como verlo, y seguramente puede haber muchas formas más de verlo....
Apenas pueda sentarme a revisarlo te respondo, pero muchas que muchas gracias!!!
Saludos!
Agradezco tu tiempo, porque realmente has replanteado todo, al menos de como verlo, y seguramente puede haber muchas formas más de verlo....
Apenas pueda sentarme a revisarlo te respondo, pero muchas que muchas gracias!!!
Saludos!
NeoOffice 3.1.2 con MacOS 10.6.8
-
- Mensajes: 7
- Registrado: Jue Jun 28, 2012 10:36 pm
Re: Ayuda con Filtros y otras herramientas
Otra cosa.... lo que estoy buscándole la vuelta y no encuentro es como hacer que el "botón" fecha aplique la fecha o cualquier dato en una columna específica...???
NeoOffice 3.1.2 con MacOS 10.6.8
Re: Ayuda con Filtros y otras herramientas
Como ya dijimos aquí http://user.services.openoffice.org/es/ ... 717#p26717 de forma sencilla es sólo asignar la macro.
Más complicadamente pero más versátil es usar macros resumidas, una por botón, .... columnaC ,
que llamen a otras
Más complicadamente pero más versátil es usar macros resumidas, una por botón, .... columnaC ,
Código: Seleccionar todo
Sub columnaC
IrAFinal("Lista.A4") ' vamos a la siguiente celda libre de [nombreHoja.letracolumnaFila]
ValorFechaEnCelda ' ponemos fecha en la celda usando la funcion
End Sub
'----------------------------------
Sub columnaD
Dim Cela as String
Cela= ThisComponent.getSheets.getByName("Lista").getCellRangeByName("D4").AbsoluteName
' vamos a la siguiente celda libre
IrAFinal(Cela)
' ponemos fecha en la celda usando la funcion
ValorFechaEnCelda
End Sub
Código: Seleccionar todo
'---------------------------------------------------------------
Sub ValorFechaEnCelda (Optional DirCelda As String) 'Si la selección no es una celda dará error
'Pone la fecha en la celda que se le dice o en su defecto en la seleccionada
'DirCelda es la dirección de la celda y admite
' Notaciones de celda "AB55" "AB$55" ... → se asumirá de la hoja activa
' Notaciones de nombre absoluto "Hoja.AB55" "$Hoja.$AB$55" ..
Dim oSel As Object
Dim Posic As Integer
Dim DirM() As String
Dim nH, nC As String
If IsMissing(DirCelda) Then
oSel=ThisComponent.GetCurrentSelection 'celda que está seleccionada
Else 'cuando se proporciona una celda específica
DirCelda= Replace(DirCelda, "$", "")
Posic= InStr(DirCelda, ".")
If Posic > 0 Then 'como hay punto es nombre completo
DirM=Split(DirCelda, ".")
nH=DirM(0) 'nombre de la hoja
dC=DirM(1) 'direccion de celda
oSel=ThisComponent.getSheets.getByName(nH).getCellRangeByName(dC)
Else 'como no hay nombre de hoja se asume la activa
oSel=ThisComponent.getCurrentController.getActiveSheet().getCellRangeByName(DirCelda)
End If
End If
'Evaluamos que no haya datos en ella (sin valores ni texto)
If oSel.getValue=0 And oSel.getString="" Then
oSel.setValue(Date)
Else 'Si no está vacía avisar y salir
Msgbox "Los datos de la celda no se modificarán", 64, "Aviso de celda no vacía"
End If
End Sub
'----------------------------------
Sub IrAFinal(Celda As String, Optional ValorSentido As Integer)
' ValorSentido: 0="Down" 1="Up" 2="Right" 3="Left"
' Mofificación sobre grabador de macros flexibilizando para ir en todas direcciones
'---------- define variables ---------------------------------------------------------
Dim Document As Object
Dim Dispatcher As Object
Dim Sentido As String
Dim English' As String
English = Array("Down", "Up", "Left", "Right") 'palabros que se usan en las opciones
If IsMissing(ValorSentido) Then ValorSentido = 0 'Por defecto irá hacia abajo
If ValorSentido > 3 Then ValorSentido = 3 'Si damos un valor excesivo derecha
Sentido = English(ValorSentido)
' --------- acceso al documento ------------------------------------------------------
Document = ThisComponent.CurrentController.Frame
Dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
' --------- se sitúa en la celda de la columna con datos continuos -------------------
Dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = Celda '"$D$4" '<<<<------ sustituimos celda absoluta por variable
Dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
' --------- va hasta el final de datos contiguos ----------------------------------------------
Dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "By"
args2(0).Value = 1
args2(1).Name = "Sel"
args2(1).Value = false
Dispatcher.executeDispatch(document, ".uno:Go" & Sentido & "ToEndOfData", "", 0, args2())
' --------- avanza uno hacia abajo ---------------------------------------------------
Dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "By"
args3(0).Value = 1
args3(1).Name = "Sel"
args3(1).Value = false
Dispatcher.executeDispatch(document, ".uno:Go" & Sentido, "", 0, args3())
End Sub
Todo es mejorable, estamos dispuestos a mejorar. ¿Yo? ... poco a poco.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.
Nunca hay acritud en mis comentarios, si lo pareciera, seguro que me he expresado mal.