Controls et tableaux

Bonjour et merci d'avance à ceux qui prendront du temps pour m'aider !

Alors voici mon problème :

j'ai un userform contenant 9 textbox permettant d'entrer des coordonnées X et 9 de Y, qui s'appellent respectivement, Textboxx1, Textboxx2... et Textboxy1, Textboxy2....

Mon but pour l'instant (car je bloque ici) est de créer des variables x(1), x(2)... y(1), y(2)... afin des les rendre égales aux valeurs dans les TextBox

pour l'instant j'arrive a montrer le userform avec les textbox que je remplis, puis je clique sur un bouton qui appelle la macro si dessous :

Dim x(9), y(9)

For i = 1 To 9
x(i) = Controls("TextBoxx" & i).Value
y(i) = Controls("TextBoxy" & i).Value
Next i

et la il me met erreur, sub ou fonction non définie en surlignant "Controls", pourtant j'ai beau chercher sur les forum et sites de tuto et c'est bien cela qu'ils utilisent...

J'utilise Excel 2016, peut être cette fonction a t elle été modifiée ?

deuxième problème, j'ai essayé sans boucle et il me met : objet requis, je crois que je n'ai pas encore très bien compris comment fonctionnent les tableaux, voici mon second code :

Dim x(9), y(9)

x(1) = TextBoxx1.value
x(2) = TextBoxx2.value

y(1) = TextBoxy1.value
y(2) = TextBoxy2.value

merci pour vos réponses !!

Bonsoir,

D'une part, sans fichier, on ne peut faire que des conjectures... plus ou moins gratuites !

D'autre part, une procédure commence par Sub et se termine par End Sub. Quand on ne les a pas dans une citation de code, il peut y avoir n'importe quoi d'autre en plus. On attend donc de savoir ce qu'il en est pour en parler.

Si dans la procédure (complète) des éléments se réfèrent à d'autres hors de la procédure, cela doit être indiqué, et le code correspondant fourni.

Il faut aussi indiquer où est placée la procédure : on sait déjà que ton code (incomplet) ne peut fonctionner dans un module standard, il est donc important de savoir s'il se trouve à un emplacement adéquat.

Cordialement.

Bonsoir

Oui je n'ai pas précisé tout cela désolé, ca me semblait logique mais ca ne l'est pas forcément en fait

je vous mets le fichier en lien pour que vous puissiez juger par vous même.

Le but est de rentrer les coordonnées de chaque centre et la figure, puis que la figure de l'onglet "Base" soit copiée dans les 9 onglets avec pour centre les coordonnées rentrées précédemment, puis que dans l'onglet résultat on additionne les 9 onglets précédents.

Et pour l'instant je bloque sur la définition des variables...

Merci encore pour votre aide

19test.xlsm (55.75 Ko)

Tu as tout de même eu l'explication ! Tu fais appel à des objets attachés à un Userform, en dehors du Userform ! VBA ne sait pas où les trouver si tu ne lui dis pas.

bonjour,

Pour reformuler la réponse de Ferrand il faut mettre ta "sub chauffe" dans le module du Userform.

Mébon à part ça, elle me semble un peu... "pourrie" car il n'y a rien dans tes Textbox et on ne voit pas bien par quoi tu comptes les remplir. Donc ça ne fait que charger tes tableaux avec du vide et ça beugue un peu plus loin car

Controls("TextBoxy" & i).Value / 20 

revient à diviser "vide" par 20 et là le compilateur il aime pas...

A+

D'accord merci pour votre aide, évidemment les textbox vont être remplie par l'utilisateur, le bouton lance le tableau puis l'utilisateur rempli les textboxs.

et pour ce qui est du problème de "controls", il n'est pas réglé, je ne sais pas pourquoi jai cette erreur ?

Bonjour,

Controls, VBA sait quand il le trouve dans le module du Userform, pas d'ambiguïté !

Dans un module standard, il ne sait pas ce qu'est Controls, il faut lui dire Userform1.Controls.

Mais comme l'a dit Galopin dont je partage l'avis (et que je salue !) Il y aurait pas mal de choses à revoir sur l'ensemble...

Je n'ai pas eu le temps de creuser, mais le fait que tu annonces quelque part une opération longue, invitant l'utilisateur à patienter, m'a titillé car ce ne devrait pas être le cas pour l'opération envisagée !

Cordialement.

Oui je comprends ^^ mais c'est pour la suite, je n'en était qu'au début et je vais avoir pas mal de calcul à faire après.

Je comprend mieux mon erreur maintenant, merci beaucoup, et désolé si mon fichier n'est pas à la hauteur, je débute encore, j'apprend au fur et à mesure !

Rechercher des sujets similaires à "controls tableaux"