Borde de línea según filas y columnas de datos

Necesitosu ayuda en el formulario muestra inicio y fin para insertar datos en horizontal y vertical solo me faltaría hacer la cuadricula y dependerá de las filas y columnas utilizadas.

macro 

Private Sub CommandButton1_Click()
    Set h = Sheets("Blad1")
    x = 7
    For i = Txtini_y.Text To Txtfin_y Step Txtini_y
        h.Cells(x, "A") = i
        x = x + 1
    Next i
    '
    Z = 2
    For j = Txtini_x To Txtfin_x Step Txtini_x
        h.Cells(5, Z) = j
        Z = Z + 1
    Next j
End Sub

2 respuestas

Respuesta
2

Al momento de definir el inicio de tu rango le agregué 2 variables según tu imagen. Y al final la instrucción para la cuadrícula:

Private Sub CommandButton1_Click()
    Set h = Sheets("Blad1")
    x = 7  :  a = 5
    Z = 2  :  b = 1
    For i = Txtini_y.Text To Txtfin_y Step Txtini_y
        h.Cells(x, "A") = i
        x = x + 1
    Next i
    '
    For j = Txtini_x To Txtfin_x Step Txtini_x
        h.Cells(5, Z) = j
        Z = Z + 1
    Next j
    Range(Cells(a, b), Cells(x - 1, Z - 1)).Borders.LineStyle = xlContinuous
End Sub
Respuesta
1

Para los bordes:

h.Range("A5").Resize((Txtfin_y / Txtini_y) + 2, (Txtfin_x / Txtini_x) + 1).Borders.LineStyle = xlContinuous

Para los númeroa puedes utilizar Series en lugar de ciclos:

Private Sub CommandButton1_Click()
  Dim h As Worksheet
  '
  Set h = Sheets("Blad1")
  With h.Range("A7")
    .Value = Txtini_y.Value
    .DataSeries xlColumns, xlLinear, xlDay, Txtini_y, Txtfin_y, False
  End With
  '
  With h.Range("B5")
    .Value = Txtini_x.Value
    .DataSeries xlRows, xlLinear, xlDay, Txtini_x, Txtfin_x, False
  End With
  h.Range("A5").Resize((Txtfin_y / Txtini_y) + 2, (Txtfin_x / Txtini_x) + 1).Borders.LineStyle = xlContinuous
End Sub

¡Gracias Dante! 

Dante buenas tardes como hago para que las DataSeries me acepte decimales

En el incremento puedes poner el decimal que quieras.

.DataSeries xlRows, xlLinear, xlDay, Txtini_x, Txtfin_x, False

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas