Jump to content

renzo palacios

Members
  • Content Count

    18
  • Joined

  • Last visited

About renzo palacios

  • Rank
    Member
  • Birthday 03/08/1968

Converted

  • Campos
    ,
  1. yo lo haria diferrente que seleccionaras de un combobox el producto y cambiara el grafico pero segui con tu sugerencia
  2. cada boton tiene una macro como cada una de estas Private Sub Btnb_Click() Sheets("Hoja1").Range("p2") = 2 End Sub Private Sub Btnc_Click() Sheets("Hoja1").Range("p2") = 3 End Sub Private Sub Btnd_Click() Sheets("Hoja1").Range("p2") = 4 End Sub Private Sub Btne_Click() Sheets("Hoja1").Range("p2") = 5 End Sub
  3. Buen día, En formulas asigne una formula desref asi el nombre Rango =DESREF(Hoja1!$A$5,0+Hoja1!$P$2,1,1,12) para el nombre titulo =DESREF(Hoja1!$A$5,0+Hoja1!$P$2,0,1,1) El el rango de informacion de los datos del grafico le coloque
  4. buen día, depronto con este archivo te sirve. EJEMPLO.zip
  5. Esto se puede elaborar, haciendo uso de la formula desref, teniendo en cuenta que esta formula es de rango relativo y lo puedes variar dependiendo de una fecha, tocaria saber cual es el grafico que quieres para tratar de simularlo
  6. El problema creo es en el nombre de la hoja pero te propongo que le hagas seguimiento, para ello en la macro la ejecutas paso a paso y miras donde para, para revisar el tema, puede ser que no encuentra las celdas del nombre de la hoja pero para ello necesitaria el original.
  7. creo que la macro que te puede servir es la adjunta la puedes adapatar mas Sub Imprimir() Dim Ruta As String, Nombre As String For h = 1 To Sheets.Count If Sheets(h).Name Like "datos calibración*" And _ Sheets(h).Range("A16") <> "" Then Total = Total + 1 End If Next For h = 1 To Sheets.Count If Sheets(h).Name Like "datos calibración*" And _ Sheets(h).Range("A16") <> "" Then Página = Página + 1 Ruta = ThisWorkbook.Path + "\" Nombre = CStr(Sheets(h).Range("a3")) Sheets(h).Range("F5") = "Página " & Página & " de " & Total Sheets(h).ExportAsFixedFormat Type:=xlTypePDF, Filename:=Ruta & Nombre, Quality:= _ xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _ OpenAfterPublish:=False End If Next End Sub
  8. el problema es que dias festivos de que pais podria tomar, la otra cuestion es generar una macro que lea los dias festivos de una tabla y verifique si los quita o no teniendo en cuenta que es una formula generica yo creo que solo toma como no habil los sabados y domingos
  9. buen día, Espero te sirva con esta modificacion. Ejemplo foro.zip
  10. Parte del codigo que te podria servir es el siguiente pero no lo puedo adaptar hasta no saber que hojas vas a comparar y lo que encuentre se elimina Private Sub colorear_celdas_encontradas() Dim vbfila As Long, vbcolumna As Long vbfila = Cells(Rows.Count, 1).End(xlUp).Row vbcolumna = Cells(Rows.Count, 1).End(xlUp).Row For i = 8 To vbfila For j = 2 To vbcolumna If Cells(i, j) = Cells(4, 5) Then With Cells(i, j).Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 65535 .TintAndShade = 0 .PatternTintAndShade = 0 End With Else Cells(i, j).Interior.ColorIndex = -4142 End If Next Next End Sub
  11. Buien dia, Creo que para ti seria mejor utilizar la funcion contar.si.conjunto, que te permite adicionar tantos criterios como necesites de las hojas o libros que necesites
  12. Sub pasardatos() Dim lastRow% Dim vbFila As Long Dim wsFrom As Worksheet, wsTows As Worksheet, wsToop As Worksheet, wsTootros As Worksheet, wsTopr As Worksheet Set wsFrom = ThisWorkbook.Sheets("Hoja1") Set wsTosf = ThisWorkbook.Sheets("SF") Set wsToop = ThisWorkbook.Sheets("OP") Set wsTopr = ThisWorkbook.Sheets("pr") Set wsTootros = ThisWorkbook.Sheets("OTROS") Set wsTopr1 = ThisWorkbook.Sheets("SF+PR") wsTosf.Range("a:f").Clear wsToop.Range("a:f").Clear wsTootros.Range("a:f").Clear wsTopr.Range("a:f").Clear wsTopr1.Range("a:f").Clear lastRow = wsFrom.Range("C1048576").End(xlUp).Row For i = 11 To lastRow If wsFrom.Cells(i, 8) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTosf.Range("a:a")) + 1 wsTosf.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTosf.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 7) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsToop.Range("a:a")) + 1 wsToop.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsToop.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 9) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTootros.Range("a:a")) + 1 wsTootros.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTootros.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 6) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTopr.Range("a:a")) + 1 wsTopr.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTopr.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If Next End Sub[/PHP] [uSER=206004]@renzo palacios[/uSER] [b][color=#0000ff] [/color][/b]
  13. creo que con esta macro te funcionara, por favor me cuentas Sub pasardatos() Dim lastRow% Dim vbFila As Long Dim wsFrom As Worksheet, wsTows As Worksheet, wsToop As Worksheet, wsTootros As Worksheet, wsTopr As Worksheet Set wsFrom = ThisWorkbook.Sheets("Hoja1") Set wsTosf = ThisWorkbook.Sheets("SF") Set wsToop = ThisWorkbook.Sheets("OP") Set wsTopr = ThisWorkbook.Sheets("pr") Set wsTootros = ThisWorkbook.Sheets("OTROS") Set wsTopr1 = ThisWorkbook.Sheets("SF+PR") wsTosf.Range("a:f").Clear wsToop.Range("a:f").Clear wsTootros.Range("a:f").Clear wsTopr.Range("a:f").Clear wsTopr1.Range("a:f").Clear lastRow = wsFrom.Range("C1048576").End(xlUp).Row For i = 11 To lastRow If wsFrom.Cells(i, 8) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTosf.Range("a:a")) + 1 wsTosf.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTosf.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 7) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsToop.Range("a:a")) + 1 wsToop.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsToop.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 9) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTootros.Range("a:a")) + 1 wsTootros.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTootros.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If If wsFrom.Cells(i, 6) = "*" Then vbFila = Application.WorksheetFunction.CountA(wsTopr.Range("a:a")) + 1 wsTopr.Cells(vbFila, 1) = wsFrom.Cells(i, 3) wsTopr.Cells(vbFila, 2) = wsFrom.Cells(i, 4) End If Next End Sub[/PHP] [b][size=5][color=#0000ff] [/color][/size][/b]
  14. buen día, espero esta macro te sirva Libro2.zip
×
×
  • Create New...

Important Information

Privacy Policy


CTA Templates.png