Determinación de Numero de Columna Según Casilla

Hola!
Necesito ayuda, conociendo el siguiente hecho:
Tengo una Matriz de 16 Filas y 3 Columnas (es decir tiene 48 casillas numeradas
desde la 1 a la 48)
Necesito una función que al pasarle el Numero de Una Casilla POR me devuelva
el Numero de Columna a la que Pertecece esa casilla (1, 2 ó 3).
Ej:    Fomato ---> DetColum ( nFilas, nColumnas, nCasillaNo)
        Si :  nLaColumna = DetColum(16,3,13)
               en nLaColumna debe devolver el valor de columna 1
Gracias.
Camboy

1 Respuesta

Respuesta
1
Depende como tengas ordenados los números en la matriz..
Adjunto función que te da el número de columna suponiendo un orden primero por columnas y luego por fila, esdecirc...
C1 C2 C3
1 17 33
2 18 34
... ... ...
16 32 48
Function numeroColumna(a As Integer)
If a <= 16 Then
columna = 1
ElseIf a <= 32 Then
columna = 2
Else
columna = 3
End If
End Function
El parámetro de ingreso de la función es el valor de la casilla y devuelve el número de la columna.
Agradezco su atención, en realidad los Números en la Matriz están ordenados por Filas,
y corresponden al valor de posición de las casillas (Numero Ordinal). La función que usted
me presenta me resultaría si considerara su ordenamiento en filas.
Gracias.
Camboy
Si ese es el caso puedes usar esta función
Function numeroColumna(a As Integer)
Dim prueba As Integer
Dim columna As inetger
prueba = a Mod 3
If prueba = 1 Then
columna = 1
ElseIf prueba = 2 Then
columna = 2
Else
columna = 3
End If
End Function
Muchísimas gracias Experto, eso mismo era lo que quería, pero a veces
La mente se le ofusca a uno, gracias de nuevo.
Camboy
Probé la función y la adjunto con algunas correcciones en sintaxis...
Function numeroColumna(a As Integer) As Integer
Dim prueba As Integer
prueba = a Mod 3
If prueba = 1 Then
numeroColumna = 1
ElseIf prueba = 2 Then
numeroColumna = 2
Else
numeroColumna = 3
End If
End Function
Disculpa mi apresuramiento anterior...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas