Boite de dialogue en fond

Bonjour à tous,

J'ai créé un fichier Excel avec une grosse macro pour du dépouillement .

Pendant le déroulement de cette macro je demande à l'utilisateur de rentrée la colonne dans la qu'elle se situe la variable X mais des fois elle se situe en dehors du champs de vision j'aimerais donc pouvoir faire en sorte que l'utilisateur puisse navigué sur la feuille Excel.

Avez vous une solution s'il vous plait.

Merci

1

Bonjour,

Si on connait cette variable X, peut-être on peut la localiser et donc connaitre sa colonne ??

Mais sans le code ni les données, pas facile de savoir si c'est réalisable ni de proposer une éventuelle solution..

A+

Bonjour,

Un exemple :

11choix-colonne.xlsm (79.01 Ko)

Bonsoir…

Toujours fidèle aux Tableaux (ListObjects*), dans un onglet, un tableau nommé Tb et un bouton d’option nommé OP pour ouvrir le formulaire nommé Colonne qui ne contient qu‘une liste déroulante (Combobox) nommée C :

Pour lancer la macro, (un simple exemple de lancement)

Private Sub Op_Click()
    If Op Then Colonne.Show: Op = Not Op
End Sub

Pour ouvrir le formulaire, dans sa fenêtre des codes

Private Sub UserForm_Initialize()
    Dim n As Integer
    For n = 1 To [Tb].Columns.Count: C.AddItem [Tb].Item(0, n): Next
End Sub

Private Sub C_Click()
    [Tb].Columns(C.ListIndex + 1).Select
    [Op].Left = Selection.Columns.Left
End Sub

Nota : j’ai choisi un ActiveX qui se déplace avec le choix de colonne.

*

Bien entendu, le tableau peut se déplacer dans une autre feuille et même voir ses titres changer éventuellement sans toucher aux codes !

Bonjour,

voici un exemple de fichier la variable que je cherche est celle ci : Ration équivalence (Lambda) (B1-S1)

Mais elle est en dehors de mon champs de vision (colonne I) des fois elle est plus loin cela dépend des données enregistré.

C'est quand j'ouvre le imput box que sa me demande la colonne.

Sheets("D_B").Select
lam = InputBox("Indiquer dans qu'elle colone se situe les valeurs lambda:", "Lambda", "F")

Sheets("D_B").Select
Dim y
Application.ScreenUpdating = x
For y = [D65536].End(xlUp).Row To 1 Step -1
If Range(lam & y).Value = x Then Rows(y).Delete
Next
12exemple.zip (319.31 Ko)

Bonjour,

Pourquoi demander quand il suffit de chercher ????

Option Explicit
Sub suppression_levé_de_pied()
Dim cel  As Range
Const titre$ = "Ration équivalence (Lambda) (B1-S1)"

  Set cel = Worksheets("D_B").Rows(1).Find(titre)
  If Not cel Is Nothing Then
    MsgBox "Les valeurs lambda se situent dans la " & cel.Column & "° colonne : " & Split(cel.Address, "$")(1)
  Else
    MsgBox "Il n'y a pas de colonne intitulée « " & titre & " »"
  End If

End Sub

Parce que le Nom peut parfois changer malheureusement.

Mais merci du conseil des fois la solution est plus simple que ce que l'on pense c'est vrai :)

Et donc pourquoi le choix-colonne que j'avais proposé auparavant ne convient-t'il pas ?

Parce que j'aimerais savoir comment l'intégrer à ma macro sans cliquez sur le bouton que tu as créé et que tu ne pas rentré manuellement cette colonne car si elle se trouve à AZ tu est obliger de tout faire un par un le but est que mon imput box soir comme mis en suspend le temps que je trouve ma colonne en faisant défilé la petite barre pour trouvé ma valeur.

Parce que j'aimerais savoir comment l'intégrer à ma macro ...

A partir du VBE, il suffit de Glisser - Déplacer le formulaire usfChoix depuis mon fichier vers le tien.

Pour l'intégrer à ta macro :

Sub suppression_levé_de_pied()
Dim lam As String

  ' Le début de ton code
  ' ...
  ' A la place de l'inputBox :
  With usfChoix
    Set .Feuille = Worksheets("D_B")
    .Show
    If .TextBox1.Value <> "" Then
      lam = .TextBox1.Value
    Else
      Exit Sub
    End If
  End With
  Unload usfChoix
  ' La suite de ton code
  ' ...

End Sub

Désolé du retard de réponse je n'est pas toujours le temps de m'occuper de la macro même si sa me passionne.

J'ai une erreur " '424' Objet requis" lors du lancement de la partie de :

 Set .Feuille = Worksheets("D_B").Show

Je voudrais voir avec vous pour trouver pourquoi sa me fait cela.

Merci

C'est normal, il y a 2 lignes différentes !

    Set .Feuille = Worksheets("D_B")
    .Show

Super ça marche un grand MERCI à toi désolé de t'avoir autant sollicité je me débrouille en macro mais ne suis pas un génie non plus.

J'ai au début que le ".Show" à la ligne était une erreur de collage.

En tout cas encore merci c'est SUPER

Rechercher des sujets similaires à "boite dialogue fond"