Tengo esta Private en una hoja, cambiar un concepto si se puede

Tengo esta Private en una hoja, cambiar un concepto si se puede:

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
If Not Intersect(Target, [E93:V94]) Is Nothing Then ' PEDRO
Sheets("ControlVentaArticulo").Select
Sheets("ControlVentaArticulo").[E93].Select
Selection.End(xlToRight).Offset(0, 1).Select
End If
End Sub

Y lo que necesitaria es cambiar este concepto de columna libre:

Sheets("ControlVentaArticulo").[E93].Select

Por este otro, de doslineas, pero no se como hacerlo:

Range("E93:V94").Select

1 respuesta

Respuesta
1

¿Qué es lo que quieres que haga la macro?

¿En qué hoja tienes el evento?

La macro es:

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
If Not Intersect(Target, [E13:P69]) Is Nothing Then
Sheets("ControlVentaArticulo").Select
Sheets("ControlVentaArticulo").[E93].Select
Selection.End(xlToRight).Offset(0, 1).Select
End If
End Sub

Pero en la linea:

Sheets("ControlVentaArticulo").[E93].Select

Quisiera que fuera En este rango:

"E93:V94"

Que cuando llegara a "V93" empezara en línea de abajo"E94" hasta "V94"

Un saludo Dante

Sheets("ControlVentaArticulo").[E93:V94].Select

Que pudiera ser así, pero no me funciona

Un saludo

¿Qué quieres que haga la macro y en qué hoja tienes la macro?

Hola Dante
Haber si me explico

La primera línea, es la hoja de cada proveedor y varia según cada problemática de sus artículos, que cuando ingreso importe me traslada a la hoja de la segunda línea que es la hoja de "ControlVentaArticulo":
If Not Intersect(Target, [E13:P69]) Is Nothing Then

La segunda línea, para seleccionar la hoja de "ControlVentaArticulo", y añadir las unidades que van entrando:
Sheets("ControlVentaArticulo").Select

Y la terecera línea, aquí voy añadiendo las unidades totales de cada proveedor y normalmente uso 18 celdas, "E93:V93", que van variando en cada proveedor:
Sheets("ControlVentaArticulo").[E93].Select

Y es en esta línea, todo va bien, pero resulta que en 2 proveedores, son muchas compras y necesitaría agregar a estos dos proveedores, otra línea, por eso en vez de, "E93:V93", necesito que la pudiera usar otra línea para poder usar más celdas, por eso necesitaría usar, "E93:V94", que cuando este llena la casilla "V93", la siguiente casilla que me seleccione sea "E94", hasta la "V94"

Un saludo Dante

Te anexo una solución,

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, [E13:P69]) Is Nothing Then
        Sheets("ControlVentaArticulo").Select
        u = Sheets("ControlVentaArticulo").Cells(93, Columns.Count).End(xlToLeft).Column + 1
        f = 93
        If u < Columns("E").Column Then
            u = Columns("E").Column
        End If
        If u > Columns("V").Column Then
            u = Columns("E").Column
            f = 94
        End If
        Sheets("ControlVentaArticulo").Cells(f, u).Select
    End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas