Sélectionner valeur liste de choix access

Fermé
sormick - 24 nov. 2014 à 14:18
 sormick - 3 déc. 2014 à 17:06
Bonjour,

Je n'arrive pas à sélectionner une valeur via VBA dans une liste de choix:
mon code c'est:
Me.pays = "CANADA"

ile me sélectionne bien Canada dans la liste de choix mais
dés que je clique dessus avec la souris une Erreur s'affiche à l'écran:
(Valeur incorrecte pour ce champ)......
de plus je me sers de cette selection pour ensuite renommer un fichier.
si je la sélectionne avec la souris aucun soucis mais si je le fais via VBA
la valeur ne s'affiche pas et le fichier n'est pas renommé correctement.
Please help!!

2 réponses

f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
25 nov. 2014 à 14:20
Bonjour,

Si vous faites un choix par programme, a quoi sert la liste de choix ???
0
j'ai plusieurs fichiers qui doivent avoir exactement le même nom.
ça m'évite à chaque fois de re-sélectionner le même pays.
j'aimerais que ces infos restent en mémoire tant qu'on ne choisis pas un autre pays dans la liste de choix
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
25 nov. 2014 à 15:41
Re,

j'aimerais que ces infos restent en mémoire Ben si vous les mettez dans des variables qui sont initialisees sur changement de pays ca doit le faire
0
sormick > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
27 nov. 2014 à 14:18
Bonjour,
désolé mais je suis débutant en VBA.
pouvez vous me guider un peu plus?
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
27 nov. 2014 à 14:23
Bonjour,

Quand vous selectionnez une infos dans une liste de choix, celle-ci reste en memoire tant que vous n'en choisissez pas une autre. Ensuite ces infos elles proviennent d'ou ????
0
sormick > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
27 nov. 2014 à 20:43
J'ai au total deux listes de choix le premier avec des noms de pays le deuxième avec des noms de villes. Ensuite j'ai créé un bouton et dans ce bouton il y a code vba qui me renomme un fichier selon ce qui a été choisi dans les deux listes de choix
Ça ressemble plus ou moins à ça :
Name "c:\ dossier\file.pdf" as "c:\ dossier\" & me.Pays.Column(1) & me. Villes. Column(1) & ".pdf"
Lorsque je clique sur ce bouton le fichier est bien renommé mais les sélections dans les listes de choix on disparu. Je souhaiterais renommer un second fichier dans un autre dossier avec le même pays et même ville en cliquant sur un autre bouton sauf que parfois la ville ce n'est pas la même et le pays non plus.c'est pour ça que je souhaiterais que les listes de choix au premier renommage restent sur le pays et ville que j'ai choisis
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
2 déc. 2014 à 12:12
Bonjour,


une facon de faire sans tout reprendre la programmation:


module files: ajouter cette ligne en haut pour declaration de variable

'memoire pays selectionne pour reaffichage a la suite de renommer fichier
Public Ind_Pays As Byte


et ceci dans le VBA du formulaire Renommage:

'positionne combobox Pays sur le dernier pays choisi
'mais par defaut le pays sera le premier de la liste
'a la premiere ouverture du formulaire
Private Sub Form_Current()
If Ind_Pays <> -1 Then
Me.pays = Me.pays.ItemData(Ind_Pays)
End If
End Sub


A+
0
Super ce code!!
Sauf que malheureusement, il revient toujours sur le premier de la liste après avoir renommé le fichier.il y a peut être une mauvaise manip que j'ai fait.....
ce code: Public Ind_Pays As Byte
je l'ai mis tout au dessus de mon module
et l'autre code:
Private Sub Form_Current()
If Ind_Pays <> -1 Then
Me.pays = Me.pays.ItemData(Ind_Pays)
End If
End Sub
je l'ai mis juste au dessous de:
Private Sub listing_Click
Dim rst As DAO.Recordset
Set rst = CurrentDb.OpenRecordset("renomcont")
rst.AddNew
rst!renom_cont = Me.idcont.Column(1) & Me.renom.Value
rst.Update
rst.Close
Set rst = Nothing
End Sub
bref j'ai du mal placer tout ça je ne comprends pas.
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
2 déc. 2014 à 13:58
Re,

Ben oui, j'ai oublie le code qui memorise l'index de la liste de choix:

a mettre dans le VBA du bouton Renommer (Command4)

Ind_Pays = Me.pays.ListIndex


juste avant cette ligne:
Set oFSO = CreateObject("Scripting.FileSystemObject")
0
sormick > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
2 déc. 2014 à 14:05
Ouiiiiiii!! super!!! merci énormément pour votre aide!!!!
excellente journée à vous tous!!!!
0
sormick > f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024
2 déc. 2014 à 17:44
Bonjour,
Désolé de déranger une dernière fois.
est t'il possible de mémoriser également, dans le même principe que pour une liste de choix
les valeurs d'une zone de texte?
0
f894009 Messages postés 17200 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 11 septembre 2024 1 708
3 déc. 2014 à 10:57
Bonjour,

Oui, sur le meme principe: une variable public et les lignes de code a mettre aux memes endroit que pour la combobox

A+
0