Me podrian ayudar con una macro, y es que tengo una columna (G) que tengo que llenar dependiendo del valor de A4 en este caso, donde mando llamar la funcion es en C4 de esta manera =wrang(A4) en C4 me debe regresar el valor de A4 y la columna desde G5 hasta G14 se debe llenar con los datos de H5 hasta H14, esto si el dato capturado en A4 es AXAS, si fuera DELTAS se llenaria con los datos de I5 hasta I14 y si fuera Torres seria llenado con los datos de J5 hasta J14, esto para que la celda B4 tome la validacion de lo que se debe capturar en esa celda.
En C4 tengo la validacion como una lista y toma el rango de G5 hasta G14, por eso depende de la funcion wrang() porque es variable dependiendo de lo que se capture en Valor (Columna A4)
No se si este revuelto o tal vez no se pueda, la cosa es que cuando pasa el valor de AXAS marca error, y cuando es diferente como ejemplo puse que me regrese el valor capturado.
Que esta mal?
Código:
Function wrang(rng) nm = ActiveSheet.Name Dim i As Long Dim g As Long Dim v As Long If IsEmpty(rng) Then wrang = "" End If If rng = "AXAS" Then wrang = "AXAS 1" g = 71 'rango v = 72 i = 5 For i = 5 To 14 rx = Trim(Str(i)) ' Fila cl1 = Trim(Chr(g)) ' Rango Columna G cl2 = Trim(Chr(v)) ' Variable Columna H Sheets(nm).Range(cl1 + rx) = Sheets(nm).Range(cl2 + rx).Value 'Costo Next i Else wrang = rng 'Sheets("Hoja1").Range("G5") = "Hola" End If End Function