none
Ingresar letra de la columna para usar como rango. RRS feed

  • Pregunta

  • Necesito usar: Range("H65000").End(xlUp).Offset(1, 0).Value = "end"

    Pero necesito preguntar al usuario cual columna va a usar, guardarlo en una variable y usar esa variable para sustituir ("H65000). Aquí el código con el error:

    Sub Dividir()
    'Declaración de variables
    '
    Dim CeldaActiva As String
    Dim Columna As String
    '
    'Elegir Columna a Dividir
    Columna = InputBox("Cual columna va a dividir entre 1.000?", "ESCOJA COLUMNA.", " ")
    '
    Range (Columna:65000").End(xlUp).Offset(1, 0).Value = "end" (AQUI ME MUESTRA EL ERROR).
    Range("Columna2").Select
    Do While ActiveCell.Value <> "end"
    ActiveCell.Value = Round(ActiveCell.Value / 1000, 0)
    ActiveCell.NumberFormat = "#.##00"
    ActiveCell.Offset(1, 0).Select
    Loop
    ActiveCell.ClearContents
    '
    Application.ScreenUpdating = True
    Application.StatusBar = "Ejecución terminada."
    '
    End Sub


    Les agradezco la ayuda de antemano.
    viernes, 13 de abril de 2018 16:35

Todas las respuestas

  • Range(Columna & "65000")

    Jose R. MCP
    Code Samples

    viernes, 13 de abril de 2018 16:39
  • Muchísimas gracias por tu ayuda, me ha servido de mucho. 

    Lo usaré para realizar la re conversión monetaria la cual consta de eliminar 3 ceros a la moneda. Las bases de datos son en DBF, estoy descargando la data en .csv, le realizo la divición y luego vuelvo a montar la información a la base de datos. DBF Así me queda:

    Sub Dividir()
    'Declaración de variables
    '
    Dim CeldaActiva As String
    Dim Columna As String
    '
    'Elegir Columna a Dividir
    Columna = InputBox("Cual columna va a dividir?", "ESCOJA COLUMNA.", " ")
    '
    '
    Range(Columna & "1048576").End(xlUp).Offset(1, 0).Value = "end"
    Range(Columna & "2").Select
    Do While ActiveCell.Value <> "end"
    ActiveCell.Value = Round(ActiveCell.Value / 1000, 2)
    ActiveCell.NumberFormat = "##0.00"
    ActiveCell.Offset(1, 0).Select
    Loop
    ActiveCell.ClearContents
    '
    End Sub

    Ahora bien, estoy pensando en que sucede si la .DBF tiene mas registros de lo que soporta un archivo .csv (1048576 filas). Me puedes orientar para realizar la división dentro de la base de datos .dbf directamente.

    Gracias.


    viernes, 13 de abril de 2018 20:32