Modifier et ajouter dans une combobox
Bonjour,
j'ai trouvé ceci
mais petit problème:
la 1ère ligne ouvre le lien et referme tout excel ???
les autres lignes à voir???
si vous avez une idée ?
merci
Bonsoir,
je vous demandais de chercher sur le site... Décidemment entre ici, là et recherchez...
Le code qui ouvre un lien suite à un double clic dans un textbox où se trouve l'adresse du site :
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ThisWorkbook.FollowHyperlink Address:=Me.TextBox1.Text
End SubLe fichier en question :
Au fait je suis chez moi, c'est plus simple !
Maintenant si vous mettez ce code sur un bouton avec une adresse "en dur" alors cela devrait marcher et Excel ne se ferme pas, mais c'est le navigateur par défaut qui s'ouvre.
@ bientôt
LouReeD
@ Arturo83
Bonjour,
J'ai 'mixé' vos codes et ceux de LouReeD, pour les adapter dans le QCM4Langues.
mais j'ai 1Petit problème que je n'arrive pas à résoudre dans le menu:
[Ajouter des questions]
Quand je choisi une fiche et que je clic sur [entr] toutes les combo appraissent , là c'est OK
si maintenant je clic sur [Ajouter] cela me crée des doublons (?) depuis que j'ai rajouté des combo.
1-je n'ai plus le message: "Cette traduction est déjà présente dans la base de données " & Chr(10) & "à la ligne "
Pouvez-vous me dire où j'ai pu faire une erreur?
( en attendant j'ai ajouté des call SupprimezDoubles1_5 , pour m'éviter ces doublons mais c'est du bricolage)
merci
Re
Pour le tri dans les combobox, je ne suis pas arrivé à l'incorporer ou alors il me mélange les colonnes..
merci
@ bientôt
Bonjour,
Pour qu'on puisse bien comprendre et reproduire la même erreur, décrivez les actions complètes de ce que vous faites qui créent le problème.
Cdlt
Bonjour,
- Choisir un thème avant de cliquer sur [ajouter des questions]
- Cliquez sur [ajouter des questions]
- Choisir une fiche dans la ligne N°2 (questions)
- Faites Enter ou cliquez sur OK
- ( Vous pouvez cliquer sur la feuille correspondante au thème sans fermer USF, de façon à voir le résultat. Positionner le curseur en fin de ligne)
- Cliquez sur [Ajouter]
- Vous obtenez des doublons
- Dans USF [Questions]
- Pour éviter ces doublons, j'ai ajouté des call dans [ Private Sub Ajouter_Click() ] à la fin
- Call SupprimezDoubles1_5 '= supprime les doublons
- Call SupprimerLignes_Vides2'= supprime les lignes vides
- Call Série_1'= remet le compteur des fiches 1 à la fin colonne J
- Vous m'aviez mis cette ligne:
- MsgBox "Cette traduction est déjà présente dans la base de données " & Chr(10) & "à la ligne " & Lig1
- Mais elle ne fonctionne plus et je ne trouve pas pourquoi?
et le tri de chaque combobox, je ne suis pas arrivé à l'incorporer sans mélanger les lignes
merci beaucoup
@bientôt
Bonjour,
Pour éviter les doublons, il faut que la valeur cherchée n'existe pas dans la langue choisie, or vous avez fait le contraire.
Essayez ceci (j'ai supprimé les "NOT" et pour la dernière valeur, je l'ai multiplié par 1 pour l'avoir en numérique car la textbox 8 renvoie du texte alors que la colonne H est en standard):
With sh
If IsError(Application.Match(ComboBox1, .Range("A1:A" & DerLig_Trad), 0)) Then Lig1 = Application.Match(ComboBox1, .Range("A1:A" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox2, .Range("B1:B" & DerLig_Trad), 0)) Then Lig2 = Application.Match(ComboBox2, .Range("B1:B" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox3, .Range("C1:C" & DerLig_Trad), 0)) Then Lig3 = Application.Match(ComboBox3, .Range("C1:C" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox4, .Range("D1:D" & DerLig_Trad), 0)) Then Lig4 = Application.Match(ComboBox4, .Range("D1:D" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox5, .Range("E1:E" & DerLig_Trad), 0)) Then Lig5 = Application.Match(ComboBox5, .Range("E1:E" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox6, .Range("F1:F" & DerLig_Trad), 0)) Then Lig6 = Application.Match(ComboBox6, .Range("F1:F" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox7, .Range("G1:G" & DerLig_Trad), 0)) Then Lig7 = Application.Match(ComboBox7, .Range("G1:G" & DerLig_Trad), 0)
If IsError(Application.Match(ComboBox8 * 1, .Range("H1:H" & DerLig_Trad), 0)) Then Lig8 = Application.Match(ComboBox8 * 1, .Range("H1:H" & DerLig_Trad), 0)
End WithCdlt
Bonsoir,
si j'ai bien compris le problème c'est : lorsque vous regardez une fiche et que l'on clique sur "Ajouter", une nouvelle fiche en doublon est créée.
Première solution pour limiter ceci est de faire un test sur le textbox7 : s'il est vide alors nouvelle fiche, sinon on quitte.
Private Sub Ajouter_Click() '***************
If TextBox7.Value <> "" Then Exit SubEnsuite pour le bouton modifier je ne comprend pas cet incrément de la TextBox7 :
Private Sub Modifier_Click()
If TextBox7 <> "" Then
TextBox7 = TextBox7 + 1En effet si c'est une modification alors le numéro reste le même, non ?
@ bientôt
LouReeD
Bonjour
J'ai pris des morceaux de codes.
l'un recherche par numéro de ligne excel et l'autre par numéro en (colonne j) donc +1 (en tête) pour avoir le même numéro de ligne excel et numéro de ligne j. Je n'ai pas su faire autrement donc je trifouille.
Merci
ln = cell.RowBonjour,
merci pour tout
If TextBox7.Value <> "" Then Exit SubC'est juste une petite ligne de rien du tout et je n'ai plus de doublons, alors que j'ai l'ai vu à plusieurs reprise cette ligne...pfff
merci
@bientôt
Bonjour LouReed,
Pour éviter ceci:
Private Sub Modifier_Click()
If TextBox7 <> "" Then
TextBox7 = TextBox7 + 1je dois remplacer ln=cell.row par la colonne J où se trouve les n° de lignes. Mais je ne n'ai pas trouvé le bon code (sûrement tout simple)
J'avais pensé à 10 =j mais j'ai pas essayé car c'est trop simple
If Not cell Is Nothing Then
ln = cell.Row
ComboBox1 = f.Cells(ln, 1)
ComboBox2 = f.Cells(ln, 2)
ComboBox3 = f.Cells(ln, 3)
ComboBox4 = f.Cells(ln, 4)
ComboBox5 = f.Cells(ln, 5)
ComboBox6 = f.Cells(ln, 6)
ComboBox7 = f.Cells(ln, 7)
ComboBox8 = f.Cells(ln, 8)alors j'ai bidouillé
donc si vous pouvez me dire quel code je dois mettre à la place de ( ln=cell.row ) car pour moi c'est un casse tête.
En fait votre QCM me fait bien travailler les neurones.
Je me suis rendu compte qu'il y avait des variable dans les en-tête et je les ai mis derrière les drapeaux.
J'ai pu donc rapprocher les colonnes et remplacer les textbox par des combobox. Mais ce n'est pas une simple affaire pour un débutant comme moi.
Merci
Bonjour,
Dans 'valider' j'ai ajouté: TextBox7.Value = ln – 1
Dans 'Modifier' j'ai ajouté: TextBox7.Value = TextBox7.Value + 1
Dans 'Supprimer' j'ai ajouté: TextBox7.Value = TextBox7.Value + 1J'ai bidouillé pour pouvoir supprimer la bonne fiche par rapport à la combobox ou au N°de fiche(textbox7)
voilà
merci
@bientôt
Quel est le fonctionnement du USF ? Une consultation des fiches de traduction existantes avec possibilité de "modifier" si l'on s'aperçois d'une erreur par exemple, de supprimer une fiche parce que l'on ne support pas la vue de ce mot, et l'ajout de nouvelles traduction, c'est bien cela ?
Une fois le USF quitté, il faut que les différents tableaux de traduction se mettent à jour ?
@ bientôt
LouReeD
Bonsoir,
Oui c'est ça mais...
Désolé mais je ne vois pas où vous voulez en venir.
Plus simple je n'ai rien compris à votre message.
bonne soirée
C'était pour savoir pour éventuellement "tout reprendre" avec la gestions des différentes feuilles et autre... Mais aurais je le temps ?
@ bientôt
LouReeD
Bonjour,
Non, ne vous tracassez pas ce n'est pas grave. Je fais avec ce que j'ai. Merci
@bientôt