Presentaci - PowerPoint PPT Presentation

About This Presentation
Title:

Presentaci

Description:

Esto es, se conoce el valor de x * Si el valor del di metro nominal corresponde a alguno de los valores definidos en la est ndar , ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 68
Provided by: 896380
Category:

less

Transcript and Presenter's Notes

Title: Presentaci


1
Parte 3. Descripción del código de una función
2
Parte 3. Descripción del código de una función
Como ejemplo se escribirá el código de una
función para encontrar el diámetro exterior de
una cañería de acero al carbono, con input del
diámetro nominal en pulgadas.
3
Parte 3. Descripción del código de una función
Como ejemplo se escribirá el código de una
función para encontrar el diámetro exterior de
una cañería de acero al carbono, con input del
diámetro nominal en pulgadas.
El nombre de la función será
4
Parte 3. Descripción del código de una función
Como ejemplo se escribirá el código de una
función para encontrar el diámetro exterior de
una cañería de acero al carbono, con input del
diámetro nominal en pulgadas.
El nombre de la función será
"Pipe_Imp_CS_Dext_dn_sch"
5
Parte 3. Descripción del código de una función
Como ejemplo se escribirá el código de una
función para encontrar el diámetro exterior de
una cañería de acero al carbono, con input del
diámetro nominal en pulgadas.
El nombre de la función será
"Pipe_Imp_CS_Dext_dn_sch"
Esta función se basa en los diámetros exteriores
definidos en la norma ASME B36.10M
6
Parte 3. Descripción del código de una función
Como ejemplo se escribirá el código de una
función para encontrar el diámetro exterior de
una cañería de acero al carbono, con input del
diámetro nominal en pulgadas.
El nombre de la función será
"Pipe_Imp_CS_Dext_dn_sch"
Esta función se basa en los diámetros exteriores
definidos en la norma ASME B36.10M
Una tabla con los diámetros exteriores dext
mm correspondientes a los diámetros nominales
dn in, se debe incluir en una hoja del
archivo Excel. La función leerá la información
desde esta hoja.
7
La tabla que sigue entrega los diámetros
exteriores y espesores para cañerías de acero
carbono de diferentes diámetros nominales y
cédulas, de acuerdo a la norma ASME B36. 10
8
(No Transcript)
9
Código de la función para el diámetro exterior
10
Código de la función para el diámetro exterior
Según se explicó en la Parte 1, el código se
inicia definiendo el nombre de la función y
Visual Basic agrega el End Function .
11
Código de la función para el diámetro exterior
Según se explicó en la Parte 1, el código se
inicia definiendo el nombre de la función y
Visual Basic agrega el End Function .
Function Pipe_Imp_CS_Dext_dn(Dn) End Function
12
El diámetro exterior depende sólo del diámetro
nominal (Dn) y se encuentra en la tercera columna
de la tabla.
13
(No Transcript)
14
El código empieza definiendo la matriz C que
contiene las filas 1 a la 36 y las columnas 1 a
3.
15
(No Transcript)
16
Matriz C, en cuya tercera columna, desde las
filas 7 a la 36 se encuentran los diámetros
exteriores Dext mm
17
A continuación se definirá en el código, la
dimensión de la matriz C
18
Function Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
End Function
19
Function Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
End Function
La matriz C se ha definido con 36 columnas y 3
filas
20
Lectura de la tabla
21
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
22
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
El For-next indica que se debe repetir una
operación que depende de un índice m y se
indican los valores inicial y final de m.
23
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
El For-next indica que se debe repetir una
operación que depende de un índice m y se
indican los valores inicial y final de m.
For m 1 To 36
24
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
El For-next indica que se debe repetir una
operación que depende de un índice m y se
indican los valores inicial y final de m.
For m 1 To 36
En este espacio se indican las operaciones que se
deben efectuar, las que dependen del valor del
momento del índice m
25
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
El For-next indica que se debe repetir una
operación que depende de un índice m y se
indican los valores inicial y final de m.
For m 1 To 36
En este espacio se indican las operaciones que se
deben efectuar, las que dependen del valor del
momento del índice m
Las operaciones con el índice m terminan con
Next m
26
Lectura de la tabla
Para leer la información de la tabla, se usa una
estructura llamada For -next
El For-next indica que se debe repetir una
operación que depende de un índice m y se
indican los valores inicial y final de m.
For m 1 To 36
En este espacio se indican las operaciones que se
deben efectuar, las que dependen del valor del
momento del índice m
Las operaciones con el índice m terminan con
Next m
El loop termina después que m toma el valor 36
27
El For-next se programa como sigue
28
El For-next se programa como sigue
29
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
30
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
31
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
El valor leído se asigna al elemento (m,3) de la
matriz C
32
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
El valor leído se asigna al elemento (m,3) de la
matriz C
33
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
El valor leído se asigna al elemento (m,3) de la
matriz C
La lectura se hace en la hoja que se ha nombrado
6.CS_Imp
34
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
El valor leído se asigna al elemento (m,3) de la
matriz C
La lectura se hace en la hoja que se ha nombrado
6.CS_Imp
35
El For-next se programa como sigue
Aquí se indica que se deben leer las celdas de la
columna 3, desde la fila 1 a la 36.
El valor leído se asigna al elemento (m,3) de la
matriz C
La lectura se hace en la hoja que se ha nombrado
6.CS_Imp
En la hoja 6.CS_Imp, se lee el contenido de la
celda (m,3)
36
Resumen de los pasos de programación dados
37
Resumen de los pasos de programación dados
Function
38
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
39
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
End Function
40
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
End Function
41
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
End Function
42
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
For m 1 To 36
End Function
43
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
For m 1 To 36
C(m, 3) thisWorkbook.Worksheets("6.CS_Imp").Cel
ls(m, 3).Value
End Function
44
Resumen de los pasos de programación dados
Function
Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3)
For m 1 To 36
C(m, 3) thisWorkbook.Worksheets("6.CS_Imp").Cel
ls(m, 3).Value
Next m
End Function
45
Identificación de la fila en que se encuentra
cada diámetro nominal
46
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación en la fila
de todos los datos correspondientes a ese
diámetro.
47
(No Transcript)
48
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
49
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
50
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces se trata de la fila 7
51
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces se trata de la fila 7
La siguiente línea es
52
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces se trata de la fila 7
La siguiente línea es
ElseIf Dn 0.75 Then x 8
53
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces se trata de la fila 7
La siguiente línea es
ElseIf Dn 0.75 Then x 8
Cuyo significado es O Si Dn tiene el valor 0.75
in , se trata de la fila 8
54
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces se trata de la fila 7
La siguiente línea es
ElseIf Dn 0.75 Then x 8
Cuyo significado es O Si Dn tiene el valor 0.75
in , se trata de la fila 8
Y así sucesivamente hasta identificar todas las
filas
55
Identificación de la fila en que se encuentra
cada diámetro nominal
Al asociar el diámetro nominal del caso a su fila
en la matriz, se conoce la ubicación de la fila
de todos los datos correspondientes a ese
diámetro.
En el código se agrega la siguiente línea
If Dn 0.5 Then x 7
Cuyo significado es Si Dn tiene el valo 0.5
in entonces la fila es la fila 7
La siguiente línea es
ElseIf Dn 0.75 Then x 8
Cuyo significado es O Si Dn tiene el valor 0.75
in , se trata de la fila 8
Y así sucesivamente hasta identificar todas las
filas
Con estas dos nuevas líneas, el código se ve así
56
Function Pipe_Imp_CS_Dext_dn(Dn)

Dim C(36, 3)

For m 1 To 36
C(m, 3) ThisWorkbook.Worksheets("6.CS_Imp").Cells(m, 3).Value
Next m

If Dn 0.5 Then
x 7
ElseIf Dn 0.75 Then x 8



End Function
57
Y con todas las filas identificadas, el código se
ve así
58
Function Pipe_Imp_CS_Dext_dn(Dn)

Dim C(36, 3)

For m 1 To 36
C(m, 3) ThisWorkbook.Worksheets("6.CS_Imp").Cells(m, 3).Value
Next m

If Dn 0.5 Then
x 7
ElseIf Dn 0.75 Then x 8
ElseIf Dn 1 Then x 9
ElseIf Dn 1.5 Then x 10
ElseIf Dn 2 Then x 11
ElseIf Dn 3 Then x 12
ElseIf Dn 4 Then x 13
ElseIf Dn 5 Then x 14
ElseIf Dn 6 Then x 15
ElseIf Dn 8 Then x 16
ElseIf Dn 10 Then x 17
ElseIf Dn 12 Then x 18
ElseIf Dn 14 Then x 19
ElseIf Dn 16 Then x 20
ElseIf Dn 18 Then x 21
ElseIf Dn 20 Then x 22
ElseIf Dn 22 Then x 23
ElseIf Dn 24 Then x 24
ElseIf Dn 26 Then x 26
ElseIf Dn 28 Then x 26
ElseIf Dn 30 Then x 27
ElseIf Dn 32 Then x 28
ElseIf Dn 34 Then x 29
ElseIf Dn 36 Then x 30
ElseIf Dn 38 Then x 31
ElseIf Dn 40 Then x 32
ElseIf Dn 42 Then x 33
ElseIf Dn 44 Then x 34
ElseIf Dn 46 Then x 35
ElseIf Dn 48 Then x 36
' If the Dn-value is not within the given values,
' The function returns Dext "N/A"
Else
Pipe_Imp_CS_Dext_dn "N/A"
Exit Function
End If
59
Function Pipe_Imp_CS_Dext_dn(Dn)

Dim C(36, 3)

For m 1 To 36
C(m, 3) ThisWorkbook.Worksheets("6.CS_Imp").Cells(m, 3).Value
Next m

If Dn 0.5 Then
x 7
ElseIf Dn 0.75 Then x 8
ElseIf Dn 1 Then x 9
ElseIf Dn 1.5 Then x 10
ElseIf Dn 2 Then x 11


ElseIf Dn 44 Then x 34
ElseIf Dn 46 Then x 35
ElseIf Dn 48 Then x 36
' If the Dn-value is not within the given values,
' The function returns Dext "N/A"
Else
Pipe_Imp_CS_Dext_dn "N/A"
Exit Function
End If
Esta parte de la función termina diciendo, Else
esto es, en otro caso, si el diámetro nominal
recibido como input no es ninguno de los
revisados, entonces el input es erróneo. La
función termina entregando como respuesta un No
Aplica (N/A)
60
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa que en el examen recién realizado se ha
encontrado la línea correspondiente al diámetro
nominal recibido. Esto es, se conoce el valor de
x
61
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa que en el examen recién realizado se
ha encontrado la línea correspondiente al
diámetro nominal recibido. Esto es, se conoce el
valor de x
Conocida la fila de la matriz en la que se
encuentra el diámetro exterior buscado (fila
x), y como se sabe que este diámetro está en
la columna 3, el elemento de la matriz con el
valor buscado es el elemento (x,3)
62
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa que en el examen recién realizado se ha
encontrado la línea correspondiente al diámetro
nominal recibido. Esto es, se conoce el valor de
x
Conocida la fila de la matriz en la que se
encuentra el diámetro exterior buscado (fila
x), y como se sabe que este diámetro está en
la columna 3, el elemento de la matriz con el
valor buscado es el elemento (x,3)
Así, el valor de la función buscada es
63
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa que en el examen recién realizado se
ha encontrado la línea correspondiente al
diámetro nominal recibido. Esto es, se conoce el
valor de x
Conocida la fila de la matriz en la que se
encuentra el diámetro exterior buscado (fila
x), y como se sabe que este diámetro está en
la columna 3, el elemento de la matriz con el
valor buscado es el elemento (x,3)
Así, el valor de la función buscada es
Pipe_Imp_CS_Dext_dn C(x, 3)
64
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa que en el examen recién realizado se ha
encontrado la línea correspondiente al diámetro
nominal recibido. Esto es, se conoce el valor de
x
Conocida la fila de la matriz en la que se
encuentra el diámetro exterior buscado (fila
x), y como se sabe que este diámetro está en
la columna 3, el elemento de la matriz con el
valor buscado es el elemento (x,3)
Así, el valor de la función buscada es
Pipe_Imp_CS_Dext_dn C(x, 3)
Con esto, la función queda terminada.
65
Si el valor del diámetro nominal corresponde a
alguno de los valores definidos en la estándar,
significa en el examen recién realizado se ha
encontrado la línea correspondiente al diámetro
nominal recibido. Esto es, se conoce el valor de
x
Conocida la fila de la matriz en la que se
encuentra el diámetro exterior buscado (fila
x), y como se sabe que este diámetro está en
la columna 3, el elemento de la matriz con el
valor buscado es el elemento (x,3)
Así, el valor de la función buscada es
Pipe_Imp_CS_Dext_dn C(x, 3)
Con esto, la función queda terminada
El código completo es
66
Function Pipe_Imp_CS_Dext_dn(Dn)
Dim C(36, 3) As Variant
For m 1 To 36
C(m, 3) ThisWorkbook.Worksheets("6.CS_Imp").Cells(m, 3).Value
Next m
x 7
ElseIf Dn 0.75 Then x 8
ElseIf Dn 1 Then x 9
ElseIf Dn 1.5 Then x 10
ElseIf Dn 2 Then x 11
ElseIf Dn 3 Then x 12
ElseIf Dn 4 Then x 13
ElseIf Dn 5 Then x 14
ElseIf Dn 6 Then x 15
ElseIf Dn 8 Then x 16
ElseIf Dn 10 Then x 17
ElseIf Dn 12 Then x 18
ElseIf Dn 14 Then x 19
ElseIf Dn 16 Then x 20
ElseIf Dn 18 Then x 21
ElseIf Dn 20 Then x 22
ElseIf Dn 22 Then x 23
ElseIf Dn 24 Then x 24
ElseIf Dn 26 Then x 26
ElseIf Dn 28 Then x 26
ElseIf Dn 30 Then x 27
ElseIf Dn 32 Then x 28
ElseIf Dn 34 Then x 29
ElseIf Dn 36 Then x 30
ElseIf Dn 38 Then x 31
ElseIf Dn 40 Then x 32
ElseIf Dn 42 Then x 33
ElseIf Dn 44 Then x 34
ElseIf Dn 46 Then x 35
ElseIf Dn 48 Then x 36
Else
Pipe_Imp_CS_Dext_dn "N/A"
Exit Function
End If
Pipe_Imp_CS_Dext_dn C(x, 3)
End Function
67
Fin de la Parte 3
Nota. En el archivo de la página web
piping-tools.net, Pipe_dimensions_and_friction_f
actor.xlsm se encuentran las tres funciones
(diámetro exterior, diámetro interior y espesor)
con su código completo.
Write a Comment
User Comments (0)
About PowerShow.com