domingo

Copiar hoja con INPUTBOX

Hola de nuevo!
En una ocacion en un foro, de los cuales frecuento, me encontre con un tema, en el cual un usuario necesitaba ir creando hojas de acuerdo a los meses del año, y que este a su vez eliminara de la hoja a copiar, ciertas filas con frases especificas.

Pues bien le subi una macro sencilla, pero lo que llama la atencion es como se vuelve util el cuadro de dialogo o Application.InputBox, ya que con este no necesitamos ninguna celda o algun espacio dentro de una hoja para darle informacion a nuestras macros, tambien se vuelve util cuando queremos referenciar un rango, ingresar texto o numeros...etc

Pegarla en un modulo y luego crear un boton para la misma

Sub copiarh()
    
    Dim hj As Worksheet, ulfi As Integer
    
    Application.ScreenUpdating = False
    
    hoj = Application.InputBox("Nombre de la hoja", "Copiar hoja", Type:=2)
    
    ActiveSheet.Copy After:=Sheets(Sheets.Count)
    With ActiveSheet
        .Name = hoj
        .Shapes(1).Delete
    End With
    
    ulfi = Cells(Rows.Count, 1).End(xlUp).Row
    For x = ulfi To 18 Step -1
        If Cells(x, 2) = "B" Then Rows(x).Delete
        If Cells(x, 2) = "M/S" Then Rows(x).Delete
    Next
    
    Range(Cells(18, 2), Cells(ulfi, 2)).ClearContents
    Range("A1").Select
    
    Application.ScreenUpdating = True
        
End Sub


Adjunto tambien el archivo para pruebas

Espero le sirva a mas de uno y cualquier comentario hacerlo saber


Saludos desde Honduras

2 comentarios:

  1. Hola Gerson, la macro la copie a excel 2010 y dejo de funcionar, asigné Set hoj y pues tampoco, podrias ayudarme

    ResponderEliminar
  2. Hola http://www.blogger.com/profile/09665885865104933139

    Te adjunto el archivo y codigo para que pruebes


    Saludos

    ResponderEliminar