Una entrada a los operadores
Un cámara es un símbolo que actúa sobre dos operandos para entregar la salida.
Por ejemplo,
Veamos las siguientes expresiones:
- A + B = C
aquí
A† B y C se llaman operandos
Y
† y † se llaman operadores.
2. C > D
Aquí
C y D se llaman operandos
Y
††” se vehemencia cámara.
Tipos de operadores
Los operadores se clasifican en cuatro tipos.
- operadores aritméticos
- Operadores de comparación
- Operadores relacionales o lógicos
- Operadores de concatenación
Profundicemos en cada uno de estos; en el camino, le daré una descripción e innumerables ejemplos.
operadores aritméticos
Estos operadores son símbolos matemáticos utilizados en los cálculos. Aquí hay una letanía de operadores aritméticos admitidos por VBA.
s.no | Cirujano | Descripción | Ejemplo |
1 | † | Indica la suma de dos operandos | 4 + 5 da 9 |
2 | † | Resta el segundo operando del primero. | 8 – 5 da 3 |
3 | † | Multiplica dos operandos en sus lados | 4 * 6 da 24 |
4 | † | Divide el numerador entre el denominador | 9 / 3 da 3 |
5 | modificación | El cámara de módulo. Es el valencia residual a posteriori de una operación de división. | 10% 3 da un valencia de recordatorio de «1» a posteriori de un trato. |
6 | † | Cirujano de permisos | 10^3 da 1000 |
Programas de muestra
Un software que utiliza todos los operadores anteriores
Sub arith_oper_demo() ' declare variables Dim a, b, c ' assign values to variables a = 6 b = 7 ' Try different calculations and print them ' addition operator c = a + b Debug.Print "Addition : " & c ' subtraction operator ( positive and negative outcomes ) c = b - a Debug.Print "Subraction : " & c c = a - b Debug.Print "Subraction : " & c ' multiplication operator c = a * b Debug.Print "Multiplication : " & c ' Division operator c = a / b Debug.Print "Division : " & c ' Modulus operator c = a Mod b Debug.Print "Modulus : " & c ' Exponentiation operator c = a ^ b Debug.Print "Exponentiation : " & c End Sub
Calcular el cuerpo de una esfera.
Este software acepta un valencia de radiodifusión como entrada del agraciado y luego calcula el cuerpo y lo muestra en un mensaje.
Sub vol_sp() ' declaration of variables Dim Pi, r, vol ' assign values to the variables Pi = 3.14 'or (22/7) r = InputBox(" Enter the radius of the sphere ") ' calculation vol = (4 / 3) * Pi * (r ^ 3) ' Display the volume calculated MsgBox "The volume of the sphere with a radius of " & r & " is " & vol & "." End Sub
Operadores de comparación
Estos son símbolos que se utilizan para indicar comparar títulos† Aquí hay una letanía de operadores de comparación proporcionados por VBA que se utilizan para la energía durante la programación.
S/N | Cirujano | Descripción | Ejemplo | Salida: |
1 | † | Igual a | Si x = z Entonces | Devuelve efectivo si los títulos de los operandos (x e y) son iguales, en caso contrario devuelve inexacto |
2 | < | Menos que | Si x < z Entonces | Si el valencia de x es último que el valencia de z, se devuelve «Cierto». De lo contrario, se devuelve «Fals». |
3 | † | Mas ínclito que | Si x > z Entonces | Si el valencia de x es maduro que el valencia de z, se devuelve «Cierto». De lo contrario, se devuelve «Fals». |
4 | † | No igual a | Si x <> z Entonces | Si el valencia de x difiere del valencia de z, se devuelve «Cierto». De lo contrario, se devuelve «Fals». |
5 | † | Menos que o igual a | Si x <= z Entonces | Si el valencia de x es último o igual que el valencia de z, se devuelve «Cierto». De lo contrario, se devuelve «Fals». |
6 | † | Decano qué o igual a | Si x >= z Entonces | Si el valencia de x es maduro o igual que el valencia de z, se devuelve «Cierto». De lo contrario, se devuelve «Fals». |
Programas de muestra
Software que compara las edades de dos personas
Sub compare_demo() ' declare variables Dim fath_age, uncl_age ' assign values fath_age = InputBox("Enter your father's age :") uncl_age = InputBox("Enter your uncle's age :") ' age of uncle and father are being compared here If fath_age > uncl_age Then MsgBox "Your father is elder than your uncle. " ElseIf fath_age = uncl_age Then MsgBox "You father and your uncle are of the same age. " Else MsgBox "Your uncle is elder than your father. " End If End Sub
Software para confirmar el peso del equipaje de un pasajero ayer de atracar un planeo
Sub compare_weight() ' declare variables Dim allwd_wt, curr_wt ' assign values in kg allwd_wt = 10 curr_wt = InputBox(" Enter the weigth of your luggage") ' check if the weight is within limits If curr_wt <= allwd_wt Then flag = 1 Else flag = 0 End If ' display appropriate message to the passenger If flag = 1 Then MsgBox "The weight of your luggage is within the permitted limit. No further action is required." Else MsgBox "The weight of your luggage is more than the permitted limit. Please remove some luggage and recheck before boarding the flight." End If End Sub
La ecuación en el software precedente incluso se puede escribir con un cámara maduro que en punto de un cámara «último que o igual a».
If curr_wt > allwd_wt Then flag = 0 Else flag = 1 End If
Operadores relacionales o lógicos
Si hay más de una condición para evaluar, podemos usar operadores lógicos para ver cuántas condiciones diferentes se cumplen.
Por ejemplo:
Los hombres deben tener 60 abriles de permanencia o más para ser senior.
Pero las mujeres son consideradas personas mayores mayores de 58 abriles.
Si es necesario escribir un software para confirmar los criterios de elegibilidad, debemos validarlo ambas cosas apartado y permanencia para determinar si la persona es maduro o no. Aquí es donde entran en placer los operadores lógicos.
En el fragmento de código venidero, se utilizan dos operadores lógicos OR y AND.
If age >= 60 Or ( age >= 58 and gender = ”Female” ) then Debug.Print “ The person is a senior citizen .” Else Debug.Print “The person is not a senior citizen .“ End if
A continuación se muestran los seis operadores lógicos que ofrece VBA.
s.no | Cirujano | Descripción | Ejemplo | Salida y explicación |
1 | Y | Este es el cámara natural AND. Devuelve efectivo si las condiciones en los dos lados devuelven efectivo. | Distancia («ABC») = 3 Y 5 + 3 = 3 | La primera condición devuelve efectivo, pero la segunda condición devuelve inexacto. De acuerdo con la regla de este cámara, incluso si una condición devuelve inexacto, la respuesta final es falsa |
2 | O | Este es el cámara natural AND. Devuelve efectivo si una de las condiciones en los dos lados devuelve efectivo. | Distancia («ABC») = 3 O (5 + 3) = 3 | La primera condición devuelve efectivo, pero la segunda condición devuelve inexacto. De acuerdo con la regla de este cámara, al menos una condición debe ser verdadera para que la respuesta final sea verdadera. Por lo tanto, el resultado final es VERDADERO. |
3 | NO | Esto se vehemencia el cámara natural NOT. Invierte el estado natural de su operando. Si una condición devuelve efectivo, el cámara Natural NO devuelve el valencia opuesto («Aparente» en este caso es el valencia opuesto). | NO(Len(“ABC”) = 3 O (5 + 3) = 4) | La primera condición devuelve efectivo, pero la segunda condición devuelve inexacto. De acuerdo con la regla de este cámara, al menos una condición debe ser verdadera para que la respuesta final sea verdadera. Así que el resultado final es efectivo. El cámara NOT invierte la respuesta de efectivo a FALSO. |
4 | XOR | El cámara XOR se vehemencia «Pega deducción». Es la combinación de los operadores NOT y OR. Si solo una de las expresiones es verdadera, el resultado es efectivo. Si ninguna de las condiciones devuelve efectivo o más de una condición devuelve efectivo, el cámara XOR devuelve inexacto. | Distancia («ABC») = 3 XOR (5 + 3) = 3 | Solo una de las condiciones devuelve efectivo. Por lo tanto, el resultado final es VERDADERO. |
5 | ES | Este cámara natural compara dos variables de objeto y devuelve efectivo solo si el mismo objeto está almacenado en ellas. | Workbooks.Sheets («ABC») ES Workbooks.Sheets («DEF») | Ambas hojas de cálculo son diferentes y, por lo tanto, el resultado de salida sería «Aparente». |
6 | GUSTA | Este cámara natural LIKE puede comparar dos cadenas para coincidencias imprecisas. Puede agenciárselas patrones o cadenas internamente de otra prisión. | string1= «Amo a mi país» si string1 LIKE «*coito*» entonces | La condición comprueba si la prisión comienza con unos pocos caracteres, contiene la palabra «coito» y termina con unos pocos caracteres. Poliedro que se cumplen estas condiciones, la condición devuelve «Cierto». |
Programas de muestra
Usando el cámara Me gusta
' validate directly without variables If "Tamil Nadu is in India" Like "Tamil*" Then Debug.Print "The string starts with the expected text" Else Debug.Print "The string does not start with the expected text" End If
Salida:
La prisión comienza con el texto esperado.
Usando el cámara NOT
' checking for existence of a key in a dictionary object If Not( MyDict.Exists ("Class I") ) Then Debug.Print “Does not exist” End If
Uso del cámara XOR
Sub xor_demo() ' variable declaration Dim amt, points ' Assign values to variables amt = 2000 points = 400 ' XOR demo - only one condition is satisfied If amt > 200 Xor points > 500 Then Debug.Print ("You are winning a discount coupon_1") End If ' XOR demo - both conditions are satisfied If amt > 1500 Xor points > 200 Then Debug.Print ("You are winning a discount coupon_2") End If ' XOR demo - no condition is satisfied If amt > 6500 Xor points > 500 Then Debug.Print ("You are winning a discount coupon_3") End If End Sub
Operadores de concatenación
Estos son operadores que pueden concatenar dos expresiones.
Nota: Si ambas expresiones son números, se suman cuando usa «+».
VBA proporciona los dos operadores siguientes para fines de concatenación.
s.no | Cirujano | Descripción |
1 | † | Une dos títulos si uno o los dos son cadenas. Si los dos son títulos numéricos, se suman. |
2 | † | Une (fusiona) las dos expresiones. |
Software de ejemplo
Sub concat_demo() ' declaration of variables Dim str1, str2 Dim num1, num2 ' assigning values to the variables str1 = "Would you like to " str2 = "eat cake" num1 = 32 num2 = 5 ' using the concatenation operator "+" Debug.Print str1 + str2 Debug.Print num1 + num2 ' using the concatenation operator "&" Debug.Print str1 & str2 Debug.Print num1 & num2 End Sub
Conclusión
Estos cuatro tipos de operadores son indispensables para construir la deducción y redirigir el flujo de control en cualquier software. Muchos de nosotros solo nos limitamos a los operadores básicos y no memorizamos todo lo acondicionado en VBA.
Por ejemplo, es posible que solo necesite hacer poco si equivocación un par clave-valor en un objeto de diccionario. En este caso, usaremos la palabra esencia «Existe» para confirmar la existencia. Sin requisa, si esa palabra esencia se usa inmediato con el cámara NOT, se puede compendiar el número de líneas de código (se puede evitar un agrupación de código «else»). Tenemos que hacer un uso magnífico de estos operadores en función de la situación.