onglets multiple

Le
stef b
Bonjour
je dispose d un fichier excel 2003

je suis sur une feuille nommée X_PATRICK

je voudrais si possible que lorsque je click sur un bouton qu'il m ouvre un
useform a selection multiple avec en liste tous les noms de onglets qui
commence par "X_" sauf celle ou je suis et que lorsque je selectionne dans
cette liste par exemple X_PAUL et X_JULIEN.
Dans ce cas il me copie de X_PATRICK uniquement les cellules
range("J4:K12") sur X_PAUL et X_JULIEN .

merci d'avance.
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #24502421
Bonjour,

Pour moi, ta question n'est pas claire. Désolé si ma réponse n'est pas éclairante.

A ) Procédure pour ouvrir le formulaire :

Tu adaptes le nom du formulaire au besoin.
'---------------------
Sub test()
Userform1.Show
End Sub
'---------------------

Lorsque le formulaire s'ouvre, si tu as un combobox dans ton formulaire
et que tu veux afficher dans ce combobox toutes les feuilles commençant
par "X_" moins la feuille où tu es lors de l'appel,

Dans ton formulaire, tu utilises ce type de macro :

'----------------------------------------------
Private Sub UserForm_Initialize()
Dim Sh As Object
For Each Sh In ThisWorkbook.Sheets
If Left(Sh.Name, 2) = "X_" Then
If Sh.Name <> ActiveSheet.Name Then
Me.ComboBox1.AddItem Sh.Name
End If
End If
Next
End Sub
'----------------------------------------------
stef b
Le #24503111
merci la premiere partie marche je peux selectionné les feuilles commencant
par "X_"
et il n apparait pas la feuille en cours .
j ai rajouté sur le userform la selection multiple

ensuite viens la difficulté

sur les feuilles selectionnées dans la listbox et non combox je voudrais que
du ActiveSheet.Name il me copie
sur ces feuilles selectionnées la plage de cellule J4:K12

voila

merci d avance.


"MichD" jpk4dn$rfc$
Bonjour,

Pour moi, ta question n'est pas claire. Désolé si ma réponse n'est pas
éclairante.

A ) Procédure pour ouvrir le formulaire :

Tu adaptes le nom du formulaire au besoin.
'---------------------
Sub test()
Userform1.Show
End Sub
'---------------------

Lorsque le formulaire s'ouvre, si tu as un combobox dans ton formulaire
et que tu veux afficher dans ce combobox toutes les feuilles commençant
par "X_" moins la feuille où tu es lors de l'appel,

Dans ton formulaire, tu utilises ce type de macro :

'----------------------------------------------
Private Sub UserForm_Initialize()
Dim Sh As Object
For Each Sh In ThisWorkbook.Sheets
If Left(Sh.Name, 2) = "X_" Then
If Sh.Name <> ActiveSheet.Name Then
Me.ComboBox1.AddItem Sh.Name
End If
End If
Next
End Sub
'----------------------------------------------



MichD
Le #24503431
Si le code est dans le formulaire, tu choisis l'événement qui convient
avec cette procédure. (adapte le nom des objets au besoin)

'----------------------------------
Dim Sh As Worksheet, A As Integer

Set Sh = ActiveSheet

With Me.ListBox1
For A = 0 To .ListCount - 1
If .Selected(A) = True Then
Sh.Range("J4:K12").Copy _
Worksheets(.List(A)).Range("A1")
End If
Next
End With
'----------------------------------
stef b
Le #24503581
MERCI CA MARCHE SUPER BIEN

bravo!!!!



"MichD" jpl4il$5o5$

Si le code est dans le formulaire, tu choisis l'événement qui convient
avec cette procédure. (adapte le nom des objets au besoin)

'----------------------------------
Dim Sh As Worksheet, A As Integer

Set Sh = ActiveSheet

With Me.ListBox1
For A = 0 To .ListCount - 1
If .Selected(A) = True Then
Sh.Range("J4:K12").Copy _
Worksheets(.List(A)).Range("A1")
End If
Next
End With
'----------------------------------


Publicité
Poster une réponse
Anonyme