J'ai vu cette ligne de code Pourriez-vous m'aider à clarifier la confusion? P>
Merci! p> txtnewcaption.setfocus code> et a été raconté que
setFocus code> est utilisé comme substance
Ici, mais c'est aussi une fonction. Je lis également en ligne que la différence entre une sous-sous et une fonction est qu'un sous-bas ne renvoie aucune valeur mais une fonction renvoie une valeur. Je ne pouvais pas imaginer quel type de valeur
sefoucs code> pourrait revenir, donc j'ai cherché des articles en ligne sur
setfocus code> mais aucun d'entre eux ne m'a donné un exemple de
setfocus < / Code> Utilisé comme fonction pour renvoyer une valeur. Je suppose qu'il y a quelque chose d'inexact ou de fausse avec ma compréhension ou de ce que j'ai dit. p>
3 Réponses :
Les fonctions ne doivent pas nécessairement retourner une valeur. Vous pouvez appeler des fonctions comme vous pouvez appeler des sous-marins. Essayez de vous-même: écrivez une fonction, entrez dans la fonction dans un sous, puis vérifiez votre fenêtre de localisation. p>
Les fonctions ont le bonus supplémentaire de pouvoir retourner des valeurs, mais ne pas avoir à. p>
Edit: Mis à côté de la nécessité de retourner une valeur, je suis sûr qu'il existe une raison d'utiliser l'une sur l'autre, mais je déterminerai généralement s'il faut utiliser un sous ou une fonction par la complexité de la tâche. J'utilise des fonctions pour effectuer des tâches et des sous-marins simples à effectuer plus complexes. P>
La question est de revenir, ou de ne pas retourner qc. (sans byref) ripttuly.com/vba/example/4805/Introduction-à- Procédures
Merci pour ton aide!
Si vous Recherchez la documentation setFocus code>
méthode forte> sur un objet de contrôle d'interface utilisateur, déplacez-le de l'accent ... avec
aucune valeur de retour forte> p> p> blockQuote> (citation ci-dessus n'est pas littéralement cité, mais transmet la signification) em> p>
- Méthode SetFocus [Access 2003 VBA Référence sur la langue] LI>
- Méthode TextBox.SetFocus (accès) a> li>
- Méthode SetFocus ( Microsoft Forms) LI> ul>
fonction? h3>
Ce n'est donc pas une fonction em> dans la syntaxe VBA. En outre: une valeur de retour de la fonction forte> forte> dans VBA
est facultative forte>. Voir Référence de la langue VBA: Fonction Déclaration : p> facultatif. Valeur de retour de la fonction. P> blockQuote>
Conventions de nommage de la méthode courante h3>
Dans la plupart des langues de programmation, la convention de dénomination commune forte> (cas ignorée) pour des méthodes s'appliquent: P>
- Utilisez
Obtenez code> (souvent sans paramètres) pour renvoyer une valeur. Ces méthodes sont appelées getter em> ou accessor em>. Li>
- Utilisez
définir code> (souvent avec le paramètre comme valeur à définir) pour définir un nouvel état (ou une valeur). Habituellement, les données n'ont aucune valeur de retour, car la nouvelle valeur ou l'état est prédit par l'argument passé (leur paramètre). De telles méthodes sont appelées Setter em> ou mutator em>. Li>
- Utiliser
est code>,
a code>,
existe code>,
contient code>,
démarre code>, < code> extrémise code>, etc. pour retourner une valeur boolean em>. Ces méthodes sont utilisées pour vérifier les indicateurs (ON / OFF, VRAI / FAUX, OUI / NON). LI>
- Utilisez
Calculez code>,
localiser code>,
indexof code>,
Recherche code>,
récupération code>, < Code> recherche code>,
Déterminez code>, etc. (souvent avec des paramètres) pour renvoyer une valeur résultant d'un certain traitement en fonction des paramètres spécifiés (par un algorithme mathématique logique ou interrogé par la récupération de données) li> ul>
Merci de votre aide!
Eh bien, dans ce cas et exemple, .Setfocus n'est pas un sous-produit, ni une fonction.
Un Sub est un bit de code séparé, vous l'appelez comme p> (ou une formulaire plus courte saute le mot "appel" - il est facultatif)
Par exemple: p> ou, s'il y a des paramètres, vous pouvez aller: p> dans le cas d'une fonction? C'est à nouveau un peu de code externe. Vous pouvez utiliser des fonctions qui renvoient une valeur et ignorent la valeur de retour. P> donc p> et juste comme des sous-marins, la fonction peut accepter des paramètres: p> et comme je l'ai noté, vous pouvez "ignorer" la valeur de retour d'une fonction comme ceci: p> si vous écrivez Selon ci-dessus, vous passez la valeur, mais la valeur de retour de la fonction n'est pas "placée" ou mettez à rien. Vous pouvez donc "utiliser" une fonction qui renvoie une valeur. Vous ignorez également l'utilisation de la () autour de la valeur que vous passez. P> Cependant, dans les deux exemples ci-dessus, nous parlons de Sub VBA et de fonctions que vous écrivez. P> sometextbox.setfocus est Pas Sub, ni une fonction. P> Qu'est-ce que ce qui précède est appelé? C'est ce qu'on appelle une méthode de l'objet. P> Ainsi, lorsque vous utilisez des objets d'accès, dites des ensembles d'enregistrements, des contrôles, etc.? Eh bien que "l'objet" aura ce que nous appelons les propriétés (généralement des choses que vous pouvez définir ou obtenir une valeur de). P> Donc, pour une zone de texte, vous avez: P> MyTextBox.SetFocus
Une explication très complète qui différencie bien. Comme il est devenu très long, certains rubriques donneraient une structure. Peut-être même un tl; dr code> résumerait sur le dessus :-)
N'est-ce pas les deux (méthode, type est sous)? Par exemple. Application.Buildcriteria est une méthode aussi, mais le type est fonction.
Comme je l'ai dit, il peut devenir un peu "gris". La principale différence entre une méthode et une propriété revient à définir (ou à obtenir) une valeur provoque également une sorte d'autre action. Ainsi, vous pourriez définir le point d'enregistrement, et cela vous permet non seulement d'obtenir (ou de définir) le pointeur d'enregistrement, mais permet également au dossier d'enregistrement de «déplacer» à l'enregistrement donné. Ainsi, tandis que les propriétés et les méthodes "souvent" autorisent un ensemble et d'obtenir une valeur, la distinction est qu'une méthode fait aussi quelque chose de plus alors juste un get / jeu d'une valeur. Souvent, une méthode est une propriété et inversement. Mais la distinction est une "action".
Merci pour votre réponse détaillée. C'est très utile!
docs.microsoft.com/en-us/office/vba/language/concepts/.../a>
S'il vous plaît considérer voter b> à Taux de réponse comme (pas) utile .