Jump to content

segalo

Members
  • Content Count

    25
  • Joined

  • Last visited

About segalo

  • Rank
    Member

Converted

  • Campos
    ;

Recent Profile Visitors

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

  1. Gracias Gerson ya solucione el error que me generaba
  2. Hola Gerson estoy copiando dos tablas dinamicas dentro de la hoja, me funciona en algunos casos y otros no, el problema lo tengo en esta linea de codigo, modificando algunos rangos lo puedo hacer, pero podrias explicar que hace esta linea para entenderla correctamente. Range(Cells(4, 8), Cells(4, 8 + vtc)).EntireColumn.Delete Gracias
  3. Buenas Tardes Recurro a ustedes para que me puedan guiar como puedo copiar una tabla dinamica dentro de una macro, ya que requiero copiar la tabla 4 veces y poderla filtrar por cada una de las opciones que tiene el encabezado BU de la tabla dinamica. lo trate de hacer con la grabadora de macros pero me arroja el error "Unable to get the PivotTables property of the Worksheet class" , este es el codigo de la macro Selection.Copy Range("A26").Select ActiveSheet.Paste Application.CutCopyMode = False ActiveSheet.PivotTables("PivotTable3").PivotFields("BU").ClearAllFilters ActiveSheet.PivotTables("PivotTable3").PivotFields("BU").CurrentPage = "DSC" ActiveWindow.SmallScroll Down:=21 al igual adjunto el archivo donde esta, tiene dos macros la primera que pueden ejecutar es Pivote esta crea la primera tabla dinamica hasta alli todo bien, ahora cuando ejecuto la macro CopiarPivot que copia la tabla para poderla filtrar por un nuevo BU termina en error, si lo hago manual si me permite realizarlo, ya revise en el foro y no vi nada relacionado que me pueda guiar. agradezco la ayuda que me puedan brindar Gracias Pivote.xlsm
  4. Lo siento, por no darme a entender, si ejecutan la macro veran que fianliza en error, ya que cuando la variable n llega a 24, continua con tareas, yo requiero que nunca llegue a 24 o bueno que esas tareas no se ejecuten adicionales, y termine en error o me podrian preguntar que parte excta no entienden Gracias
  5. pero continua trabajando, como logo que salga del ciclo y no realice nada mas ?
  6. Exacto Leopoldo al final cuando realiza la 23 realiza su proceso ok, pero cuando cambia a 24 ya no cambia de columna y continua con el bloque de numero1 y la suma, ese es el error. el error lo da, al momento que como no tiene filtro, le pido que desactive los filtros y saca el error. yo que requiero es que cuando haga el ciclo del 23 finalize la macro, ya no haga nada mas, como podria hacer eso ? Gracias
  7. Gracias Leopoldo El tema del ciclo de n hasta 23 es el centro de la macro, lo que realiza es filtrar los valores de la columna de la letra LE con los valores diferentes a cero y las demas en cero, y asi en cada ciclo ya corriendo a la derecha y debe numerar en la columna A en que ciclo queda cada linea y saca la sumatoria al final, si eejcutas la macro vas a ver el resultado en la columna A y en la fila 9 Gracias
  8. Buen dia Recuerro a ustedes papar poder validar el correcto cierre del ciclo de esta macro. El ciclo afectado es el FOR que tiene la variable n debe trabajar hasta el 23, pero cuando llega a 24, sigue con el ciclo de numero1 y de suma y continua trabajando con errores. como puedo hacer para que la n al llegar a 24 finalice la macro y no realice las demas actividades ? ya movi los Next pero no lo he logrado, espero me puedan dar una guia Gracias esta es la macro Sub Union() ' Dim fila, RR As Long Dim n&, cCriterio$, H&, g&, y& fila = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row j = 5 y = 1 For H = 5 To 23 Dim aCol, t&, LE$ aCol = Array("E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y") For t = LBound(aCol) To UBound(aCol) LE = aCol(t) For n = j To 23 If n = j Then cCriterio = "<>0" Else cCriterio = "0" ActiveSheet.Range("$A$11:$AH$" & fila).AutoFilter Field:=n, Criteria1:=cCriterio ' numero1 Range("A12").Select ActiveCell.FormulaR1C1 = y Range("B12").Select Selection.End(xlDown).Select Range("A" & fila).Select ActiveCell.FormulaR1C1 = y Range("A" & fila).Select Selection.Copy Range(Selection, Selection.End(xlUp)).Select Selection.Resize(Selection.Rows.Count + 1).Select ActiveSheet.Paste Application.CutCopyMode = False Selection.End(xlUp).Select ActiveWindow.SmallScroll Down:=-24 RR = fila - 11 'MsgBox RR 'suma Range(LE & 10).Select Range(Selection, Selection.End(xlDown)).Select Range(LE & 11).Select Selection.End(xlDown).Select Range(LE & fila).Select Application.CutCopyMode = False ActiveCell.Formula = "=SUBTOTAL(9," & LE & "12:" & LE & Selection.Row - 1 & ")" Range(LE & fila).Select Selection.Copy Selection.End(xlUp).Select Range(LE & 9).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Next n j = j + 1 n = j y = y + 1 Rows("11:11").Select ActiveSheet.ShowAllData Range("A10").Select Next t Next H End Sub Gracias Ciclo.xlsm
  9. Mil Gracias Antoni, es lo que requeria, quedo completo !!
  10. JSDJSD que parte no entiendes y te explico ? Gracias Antoni, estoy ajustando para poder aplicar la formula Gracias
  11. adjunto la macro, si la ejecutan, tiene error, pero se evidencia lo que les digo la suma en la fila 9 Saludos y Gracias Book1.xlsm
  12. Hola JSDJSD Gracias por tu archivo, pero no es lo que requiero, adjunto el archivo para que puedas ver en detallo lo que requiero, en la macro en la parte de la suma, esta la siguiente linea, que es la que requiero dejar automatica, ya que como ves cambia en cada columna, funciona ok en el archivo inicial donde se grabo, pero al cambiar el archivo procesado deja de sumar, ya que el rango varia y en la formula con subtotal no he podido poner parametros variables. ActiveCell.FormulaR1C1 = "=SUBTOTAL(9,R[-79]C:R[-2]C)" Gracias
  13. Buen Dia Tengo que usar en una macro unas sumatorias dinamicas de campos filtrados, y deseo entender la formula del subtotal en la macro, tengo los siguientes ejemplos donde tengo la formula a usar manual y como la interpreta el grabador de macros para poder entender como debo usarlo, pero de maneta automatica en un ciclo. Manual: =SUBTOTAL(9;E12:E350) grabadora de macros ActiveCell.FormulaR1C1 = "=SUBTOTAL(9,R[-339]C:R[-1]C)" Manual: =SUBTOTAL(9;E12:E292) grabadora de macros ActiveCell.FormulaR1C1 = "=SUBTOTAL(9,R[-281]C:R[-1]C)" el patron que encontre es que en los corchetes realiza la resta del rango + 1 , ejem 350 -12 + 1 = 339 aqui pregunto si es correcto o como puedo interpretarlo ? ademas de como poder modificar en la macro esta formula "=SUBTOTAL(9,R[-281]C:R[-1]C)" ya que la deseo actualizar para que sea dinamica de esta manera "=SUBTOTAL(9,R[-RR]C:R[-1]C)" pero no me acepta variables de esa manera ni con & me podrian indicar como puedo modificar en formula la formula del subtotal para que sea dinamaica en la macro, y que no quede con el rango estatico ya que no funcionara, yo determino el ultimo renglos para poder hacerlo y lo tengo en una variable pero no se como incluirlo en la formula Gracias
  14. Jose, entiendo que si es confuso pero, son dos filtros, la columna en la que se trabaja son todos los valores y las otras en ceros al hacer eso la cantidad de registros cambia y por eso el valor cambia, la suma que se requiere es dinamica, no es estatica
×
×
  • Create New...

Important Information

Privacy Policy


CTA Templates.png