Rechercher : dans
Par :

Code vba

Dernière réponse le 9 jun 2005 à 15:42:50 fabieg, le 9 jun 2005 à 10:40:28 
 Signaler ce message aux modérateurs

Bonjour à tous, j'espère que quelqu'un pourra m'aider car la je galère...
J'ai marqué comme code vba:
Private Sub Userform_Initialize()
Dim Plus As String
LblRaison.Caption= "Raison Sociale" & Chr(10) & Sheets("bd").Range("A" & Lig).Value
et ça ne fonctionne pas ça m'affiche erreur d'éxécution 1004: erreur définie par l'application ou par l'objet

Je ne comprends pas où est mon erreur.
Merci d'avance pour votre aide

1

Armojax, le 9 jun 2005 à 11:04:23

Bonjour fabieg,

Est-ce que :
LblRaison.Caption= "Raison Sociale" & Chr(10) & Sheets("bd").Range("A").Value & Lig
ne marcherait pas mieux ?

Répondre à Armojax

2

fabieg, le 9 jun 2005 à 11:09:28

Non ça me mêt le même message d'erreur, décidément je ne vois pas ce qui cloche...

Répondre à fabieg

3

Armojax, le 9 jun 2005 à 11:16:24

.

Répondre à Armojax

4

fabieg, le 9 jun 2005 à 11:19:59

Bah le pb c'est que je peux pas sélectionner simplement une cellule car en fait ça dépend de la sélection qui a été faite sur un autre userform. Je m'explique dans mon usfnew on choisit une raison sociale parmi les choix qui proviennent de ma colonne A de mon fichier et le résultat doit s'afficher dans mon userform affichage et donc dans LblRaison

Répondre à fabieg

5

Armojax, le 9 jun 2005 à 11:28:08

Hello,

Bon, excuse-moi, j'ai répondu à côté.
Je me suis fait un form.
Ce que tu as écrit au début fonctionne, à condition que Lig soit défini. Ce n'est sans doute pas le cas...
Ajx.

Répondre à Armojax

7

fabieg, le 9 jun 2005 à 11:41:34

Stp après j'essaie de plus t'embeter...Tu peux m'expliquer comment je définie Lig?
Merci pour ton aide

Répondre à fabieg

6

fabieg, le 9 jun 2005 à 11:30:42

Mais je fais comment pour le définir?

Répondre à fabieg

8

Armojax, le 9 jun 2005 à 11:53:54

Fabieg,

Je suppose que dans ta feuille "bd", en colonne A, tu as des "Raisons sociales", et que tu veux faire apparaître dans ton label, à l'initialisation de ton formulaire, celle qui se trouve en ligne n° <c'est toi qui le sait>.
"Lig" doit avoir la valeur de la ligne correspondante. Il faudrait en savoir davantage sur ton fichier et ce que tu veux obtenir pour voir comment paramétrer ça.

Ajx.

Répondre à Armojax

9

fabieg, le 9 jun 2005 à 11:56:17

Bah en fait le numéro de la ligne dépend du choix fait dans un userform précédent...

Répondre à fabieg

10

Armojax, le 9 jun 2005 à 12:06:13

OK.
Donc, dans ton userform précédent, stocke quelque part cette information, dans une constante de portée générale, dans une cellule d'une feuille..., où tu veux.
Et ensuite, commence ta procédure d'initialisation avec : Lig = <la valeur stockée>.
Ajx.

Répondre à Armojax

11

fabieg, le 9 jun 2005 à 12:08:46

Mais je la stocke comment l'info dans mon premier userform?

Répondre à fabieg

12

WhiteFang, le 9 jun 2005 à 13:11:26

;-)

Tu crées un module, que tu nommes "Variables" ou "Définitions" pour plus de lisibilité...

Dans ce module tu crée une variable :

Public Lig As QuelqueChoseQuiCorrespondAuContenu

Ensuite, dans ton code, il te suffit de dire Lig=xxx
...

;-)

Ps : Tu n'est pas obligé de créer un module, du moment que tu définis ta variable HORS d'une Sub... Mais la maintenance sera plus difficile... Wild and Free

Répondre à WhiteFang

13

fabieg, le 9 jun 2005 à 14:36:11

Merci beaucoup! et par contre si j'en ai plusieurs des "Lig" qui se réfèrent à différentes colonnes je les écrit tous? et je les différencie comment? Lig1,Lig2...?

Répondre à fabieg

14

fabieg, le 9 jun 2005 à 14:44:49

Malheureuresement mon code ne fonctionne toujours pas...
Voici ce que j'ai mis dans mon premier userform:
'définition'
Public Lig As RaisonSociale
et dans mon deuxième userform:
Private Sub Userform_Initialize
Lig = RaisonSociale
Dim Plus As String
LblRaison.Caption = Sheets("bd").Range("A").Value & Lig

et ça m'affiche l'erreur 1004 erreur définie par l'application ou par l'objet...
Pouvez-vous me dire ce qui ne va pas?
Merci d'avance

Répondre à fabieg

16

WhiteFang, le 9 jun 2005 à 14:49:40

;-)

Public Lig As

-> INTEGER/LONG/STRING.....

;-)

Si c'est un N° de ligne Excel : Public Lig As Long

;-) Wild and Free

Répondre à WhiteFang

15

WhiteFang, le 9 jun 2005 à 14:47:27

;-)

Dans ce cas, tu peux aussi utiliser un tableau :

Public Lig()

Qui te crée une matrice vide, que tu peux ensuite redimensionner à souhait...

Redim Preserve Lig(10,10)

par exemple te recrée une struxture de 10 lignes/10 colonnes sans toucher à ce que tu avait précédemment....

Ensuite :

Lig(1,1)="toto"
Lig(2,1)="titi"......

;-) Wild and Free

Répondre à WhiteFang

17

fabieg, le 9 jun 2005 à 14:52:30

Suis désolée mais j'ai pas compris...:( je dois refaire un tableau sous excel dans une nouvelle feuille? mais dans ma base initiale j'ai 1600 lignes... je ne vois vraiment pas ce que je dois faire

Répondre à fabieg

18

fabieg, le 9 jun 2005 à 15:00:56

Est-ce que je pourrais t'envoyer mon fichier?tu pourrais peut-être mieux voir ce que j'ai fait comme bétise...

Répondre à fabieg

19

WhiteFang, le 9 jun 2005 à 15:29:14

;-)

OK ...

Cliques là : http://forum.aceboard.net/index.php?login=113149

Je t'attends...

;-) Wild and Free

Répondre à WhiteFang

20

fabieg, le 9 jun 2005 à 15:36:24

Je n'arrive pas à m'inscrire il me dit que la clé est fausse

Répondre à fabieg

21

 WhiteFang, le 9 jun 2005 à 15:42:50

;-)

il faut attendre le mail de confirmation, quand tu le reçois, tu cliques sur le lien et c'est bon...

;-) Wild and Free

Répondre à WhiteFang
Collection CommentÇaMarche.net