J'ouvre différents UserForm tour à tour mais j'aimerais que la Feuil4 soit
toujours en "fond" derrière les UserForm. J'ai donc mis des Feuil4.Activate
un peu partout dans mes codes mais rien n'y fait, un breve instant, je vois
la feuille qui est en traitement.
En prenant comme modèle le code ci dessous, je comprend bien qu'il active la
Feuil4 mais qu'a un certain moment il selectionne la Feuil2. Y a t'il pas
une solution pour figer la feuille de fond Feuil4 ?
Merci de votre aide
David
Private Sub UserForm_Initialize()
Feuil4.Activate
Feuil2.Select
If Feuil2.AutoFilterMode = True Then
Selection.AutoFilter
Range([A1], [J65000].End(xlUp)).AutoFilter
Else
Trier
IniObjet
End If
Re Avec beaucoup de changement et des "With" un peu partout !! cela fonctionne très bien maintenant sauf à un endroit de mon code pourtant tout simple.
J'ai Feuil2.Select Selection.AutoFilter
donc je met
With Feuil2.AutoFilter End With
C'est bien ça ?
Si oui ma listBox fait des trucs un peu bizarre et aléatoirement et encore non défini après un filtre.
Cordialement David
Re
Avec beaucoup de changement et des "With" un peu partout !! cela fonctionne
très bien maintenant sauf à un endroit de mon code pourtant tout simple.
J'ai
Feuil2.Select
Selection.AutoFilter
donc je met
With Feuil2.AutoFilter
End With
C'est bien ça ?
Si oui ma listBox fait des trucs un peu bizarre et aléatoirement et encore
non défini après un filtre.
Re Avec beaucoup de changement et des "With" un peu partout !! cela fonctionne très bien maintenant sauf à un endroit de mon code pourtant tout simple.
J'ai Feuil2.Select Selection.AutoFilter
donc je met
With Feuil2.AutoFilter End With
C'est bien ça ?
Si oui ma listBox fait des trucs un peu bizarre et aléatoirement et encore non défini après un filtre.
Cordialement David
Daniel.C
Bonjour. Je ne constate pas le problème ;-((( Daniel
et la valeur "True" est réinitialisée automatiquement en fin de macro.
Bonjour Daniel,
Ton énoncé est vrai sur toutes les versions antérieures à 2007. Mais avec Excel 2007, il faut remettre à true. C'est du moins l'observation que je fais dans mon environnement. Application.ScreenUpdating = True
Pour observer le phénomène, je te suggère de tester la proposition que j'ai faite à la question en tenant compte de la tienne : Re: Comment classer automatiquement les onglets d'un fichier XLS (dernière aujourd'hui) Tu places les procédures dans un module standard et celle-ci dans le ThisWorkbook du classeur. Maintenant, insère une nouvelle feuille ! '---------------------------------- Private Sub Workbook_NewSheet(ByVal Sh As Object) TriFeuilles End Sub '----------------------------------
Qu'obtiens-tu comme résultat si tu ne passes pas l'affichage à true ?
Merci pour ta participation.
Bonjour.
Je ne constate pas le problème ;-(((
Daniel
et la valeur "True" est réinitialisée automatiquement en fin de macro.
Bonjour Daniel,
Ton énoncé est vrai sur toutes les versions antérieures à 2007.
Mais avec Excel 2007, il faut remettre à true. C'est du moins
l'observation que je fais dans mon environnement.
Application.ScreenUpdating = True
Pour observer le phénomène, je te suggère de tester la
proposition que j'ai faite à la question en tenant compte
de la tienne :
Re: Comment classer automatiquement les onglets d'un fichier XLS
(dernière aujourd'hui)
Tu places les procédures dans un module standard et
celle-ci dans le ThisWorkbook du classeur.
Maintenant, insère une nouvelle feuille !
'----------------------------------
Private Sub Workbook_NewSheet(ByVal Sh As Object)
TriFeuilles
End Sub
'----------------------------------
Qu'obtiens-tu comme résultat si tu ne passes pas l'affichage à true ?
Bonjour. Je ne constate pas le problème ;-((( Daniel
et la valeur "True" est réinitialisée automatiquement en fin de macro.
Bonjour Daniel,
Ton énoncé est vrai sur toutes les versions antérieures à 2007. Mais avec Excel 2007, il faut remettre à true. C'est du moins l'observation que je fais dans mon environnement. Application.ScreenUpdating = True
Pour observer le phénomène, je te suggère de tester la proposition que j'ai faite à la question en tenant compte de la tienne : Re: Comment classer automatiquement les onglets d'un fichier XLS (dernière aujourd'hui) Tu places les procédures dans un module standard et celle-ci dans le ThisWorkbook du classeur. Maintenant, insère une nouvelle feuille ! '---------------------------------- Private Sub Workbook_NewSheet(ByVal Sh As Object) TriFeuilles End Sub '----------------------------------
Qu'obtiens-tu comme résultat si tu ne passes pas l'affichage à true ?
Merci pour ta participation.
michdenis
| Feuil2.Select | Selection.AutoFilter
| donc je met
| With Feuil2.AutoFilter | End With
| C'est bien ça ?
Tu ne filtres pas une feuille mais une plage de cellules ou tu enlèves les boutons d'un filtre déjà présents sur une plage de cellule.
Essaie comme ceci : '------------------------------ With Feuil2 with .Range("_FilterDataBase") .Autofilter end with End with '------------------------------
N.B. _FilterDataBase est le nom d'une plage nommée qu'Excel donne lorsqu'il exécute un filtre sur une plage. Cette plage nommée est mise à jour après l'exécution seulement.
| Feuil2.Select
| Selection.AutoFilter
| donc je met
| With Feuil2.AutoFilter
| End With
| C'est bien ça ?
Tu ne filtres pas une feuille mais une plage de cellules
ou tu enlèves les boutons d'un filtre déjà présents sur
une plage de cellule.
Essaie comme ceci :
'------------------------------
With Feuil2
with .Range("_FilterDataBase")
.Autofilter
end with
End with
'------------------------------
N.B. _FilterDataBase est le nom d'une plage nommée qu'Excel
donne lorsqu'il exécute un filtre sur une plage. Cette plage
nommée est mise à jour après l'exécution seulement.
Tu ne filtres pas une feuille mais une plage de cellules ou tu enlèves les boutons d'un filtre déjà présents sur une plage de cellule.
Essaie comme ceci : '------------------------------ With Feuil2 with .Range("_FilterDataBase") .Autofilter end with End with '------------------------------
N.B. _FilterDataBase est le nom d'une plage nommée qu'Excel donne lorsqu'il exécute un filtre sur une plage. Cette plage nommée est mise à jour après l'exécution seulement.
michdenis
| Je ne constate pas le problème ;-(((
Et bien, je dois être le seul... parce que l'affichage de l'écran ne se met pas à jour de lui-même !
Tu as un remède docteur ?
;-))
| Je ne constate pas le problème ;-(((
Et bien, je dois être le seul... parce que l'affichage
de l'écran ne se met pas à jour de lui-même !
Et bien, je dois être le seul... parce que l'affichage de l'écran ne se met pas à jour de lui-même !
Tu as un remède docteur ?
;-))
DT
Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
Merci les explication toujours très clair. Le code cela fonctionne hyper
bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long
à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ?
Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le
temps quand j'en aurai 3000 ! Merci
With Me.LstResultat
.Clear
For Each c In plage1
.AddItem c.Value
.List(.ListCount - 1, 1) = c.Offset(, 1)
.List(.ListCount - 1, 2) = c.Offset(, 2)
.List(.ListCount - 1, 3) = c.Offset(, 3)
.List(.ListCount - 1, 4) = c.Offset(, 4)
.List(.ListCount - 1, 5) = c.Offset(, 5)
.List(.ListCount - 1, 6) = c.Offset(, 6)
.List(.ListCount - 1, 7) = c.Offset(, 7)
.List(.ListCount - 1, 8) = c.Offset(, 8)
.List(.ListCount - 1, 9) = c.Offset(, 9)
Next
End With
Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
michdenis
Tu peux utiliser ceci :
Évidemment, tu adaptes le nom de la feuille, de la plage visée par ta procédure. Si ton listbox est dans une feuille, tu utilises ceci: .ListFillRange = "Plage1"
Si ton listbox est dans un formulaire : .RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de ladite feuille ou du formulaire. '------------------------------------------ Sub test() Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .ListFillRange = "Plage1" End With End With
End Sub '------------------------------------------
"DT" a écrit dans le message de groupe de discussion : OdYD4# Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
Tu peux utiliser ceci :
Évidemment, tu adaptes le nom de la feuille, de la plage visée
par ta procédure.
Si ton listbox est dans une feuille, tu utilises ceci:
.ListFillRange = "Plage1"
Si ton listbox est dans un formulaire :
.RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de
ladite feuille ou du formulaire.
'------------------------------------------
Sub test()
Dim DerLig As Long
With Me
DerLig = .Range("A:J").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
.Range("A1:J" & DerLig).Name = "Plage1"
With .LstResultat
.ColumnCount = 10
.BoundColumn = 1
.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;"
.ListFillRange = "Plage1"
End With
End With
End Sub
'------------------------------------------
"DT" <direction-ternoise@wanadoo.fr> a écrit dans le message de groupe de discussion :
OdYD4#foKHA.1544@TK2MSFTNGP02.phx.gbl...
Merci les explication toujours très clair. Le code cela fonctionne hyper
bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long
à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ?
Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le
temps quand j'en aurai 3000 ! Merci
With Me.LstResultat
.Clear
For Each c In plage1
.AddItem c.Value
.List(.ListCount - 1, 1) = c.Offset(, 1)
.List(.ListCount - 1, 2) = c.Offset(, 2)
.List(.ListCount - 1, 3) = c.Offset(, 3)
.List(.ListCount - 1, 4) = c.Offset(, 4)
.List(.ListCount - 1, 5) = c.Offset(, 5)
.List(.ListCount - 1, 6) = c.Offset(, 6)
.List(.ListCount - 1, 7) = c.Offset(, 7)
.List(.ListCount - 1, 8) = c.Offset(, 8)
.List(.ListCount - 1, 9) = c.Offset(, 9)
Next
End With
Évidemment, tu adaptes le nom de la feuille, de la plage visée par ta procédure. Si ton listbox est dans une feuille, tu utilises ceci: .ListFillRange = "Plage1"
Si ton listbox est dans un formulaire : .RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de ladite feuille ou du formulaire. '------------------------------------------ Sub test() Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .ListFillRange = "Plage1" End With End With
End Sub '------------------------------------------
"DT" a écrit dans le message de groupe de discussion : OdYD4# Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
michdenis
Il y a aussi cette alternative :
Ce code est OK, si tu le places dans une feuille module si tu es dans un formulaire, tu devras utiliser With Workheets("NomFeuille") pour définir la plage à 2 endroits et réserver Me pour désigner les objets du formulaire seulement.
'------------------------------------ Sub test()
Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row With .LstResultat .Clear .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .List = Me.Range("A1:J" & DerLig).Value End With End With
End Sub '------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
Tu peux utiliser ceci :
Évidemment, tu adaptes le nom de la feuille, de la plage visée par ta procédure. Si ton listbox est dans une feuille, tu utilises ceci: .ListFillRange = "Plage1"
Si ton listbox est dans un formulaire : .RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de ladite feuille ou du formulaire. '------------------------------------------ Sub test() Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .ListFillRange = "Plage1" End With End With
End Sub '------------------------------------------
"DT" a écrit dans le message de groupe de discussion : OdYD4# Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
Il y a aussi cette alternative :
Ce code est OK, si tu le places dans une feuille module
si tu es dans un formulaire, tu devras utiliser
With Workheets("NomFeuille") pour définir la plage
à 2 endroits et réserver Me pour désigner les objets
du formulaire seulement.
'------------------------------------
Sub test()
Dim DerLig As Long
With Me
DerLig = .Range("A:J").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
With .LstResultat
.Clear
.ColumnCount = 10
.BoundColumn = 1
.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;"
.List = Me.Range("A1:J" & DerLig).Value
End With
End With
End Sub
'------------------------------------
"michdenis" <michdenis@hotmail.com> a écrit dans le message de groupe de discussion :
eg7OoTgoKHA.3948@TK2MSFTNGP06.phx.gbl...
Tu peux utiliser ceci :
Évidemment, tu adaptes le nom de la feuille, de la plage visée
par ta procédure.
Si ton listbox est dans une feuille, tu utilises ceci:
.ListFillRange = "Plage1"
Si ton listbox est dans un formulaire :
.RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de
ladite feuille ou du formulaire.
'------------------------------------------
Sub test()
Dim DerLig As Long
With Me
DerLig = .Range("A:J").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
.Range("A1:J" & DerLig).Name = "Plage1"
With .LstResultat
.ColumnCount = 10
.BoundColumn = 1
.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;"
.ListFillRange = "Plage1"
End With
End With
End Sub
'------------------------------------------
"DT" <direction-ternoise@wanadoo.fr> a écrit dans le message de groupe de discussion :
OdYD4#foKHA.1544@TK2MSFTNGP02.phx.gbl...
Merci les explication toujours très clair. Le code cela fonctionne hyper
bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long
à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ?
Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le
temps quand j'en aurai 3000 ! Merci
With Me.LstResultat
.Clear
For Each c In plage1
.AddItem c.Value
.List(.ListCount - 1, 1) = c.Offset(, 1)
.List(.ListCount - 1, 2) = c.Offset(, 2)
.List(.ListCount - 1, 3) = c.Offset(, 3)
.List(.ListCount - 1, 4) = c.Offset(, 4)
.List(.ListCount - 1, 5) = c.Offset(, 5)
.List(.ListCount - 1, 6) = c.Offset(, 6)
.List(.ListCount - 1, 7) = c.Offset(, 7)
.List(.ListCount - 1, 8) = c.Offset(, 8)
.List(.ListCount - 1, 9) = c.Offset(, 9)
Next
End With
Ce code est OK, si tu le places dans une feuille module si tu es dans un formulaire, tu devras utiliser With Workheets("NomFeuille") pour définir la plage à 2 endroits et réserver Me pour désigner les objets du formulaire seulement.
'------------------------------------ Sub test()
Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row With .LstResultat .Clear .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .List = Me.Range("A1:J" & DerLig).Value End With End With
End Sub '------------------------------------
"michdenis" a écrit dans le message de groupe de discussion :
Tu peux utiliser ceci :
Évidemment, tu adaptes le nom de la feuille, de la plage visée par ta procédure. Si ton listbox est dans une feuille, tu utilises ceci: .ListFillRange = "Plage1"
Si ton listbox est dans un formulaire : .RowSource = "Plage1"
Évidemment, ce code est soit dans le code module de ladite feuille ou du formulaire. '------------------------------------------ Sub test() Dim DerLig As Long With Me DerLig = .Range("A:J").Find(What:="*", _ LookIn:=xlValues, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 .ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .ListFillRange = "Plage1" End With End With
End Sub '------------------------------------------
"DT" a écrit dans le message de groupe de discussion : OdYD4# Merci les explication toujours très clair. Le code cela fonctionne hyper bien.
Par contre, je me suis appercu, avec F8, que le temps de chargement été long à causse de ce bout de code :
Y a t'il moyen de réduire le temps d'inscrition de la ListBox ? Pour l'instant, la plage de cellules filtrée fait 80 lignes. J'image le temps quand j'en aurai 3000 ! Merci
With Me.LstResultat .Clear For Each c In plage1 .AddItem c.Value .List(.ListCount - 1, 1) = c.Offset(, 1) .List(.ListCount - 1, 2) = c.Offset(, 2) .List(.ListCount - 1, 3) = c.Offset(, 3) .List(.ListCount - 1, 4) = c.Offset(, 4) .List(.ListCount - 1, 5) = c.Offset(, 5) .List(.ListCount - 1, 6) = c.Offset(, 6) .List(.ListCount - 1, 7) = c.Offset(, 7) .List(.ListCount - 1, 8) = c.Offset(, 8) .List(.ListCount - 1, 9) = c.Offset(, 9) Next End With
J'ai mis ce code à la place du mien dans mon formulaire
Je vois pas quoi mettre à la place de "Plage1"
Merci de ton aide
David
Dim DerLig As Long With Feuil2 DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 '.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .RowSource = "Plage1" End With End With
Bonjour
J'ai mis ce code à la place du mien dans mon formulaire
Je vois pas quoi mettre à la place de "Plage1"
Merci de ton aide
David
Dim DerLig As Long
With Feuil2
DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues,
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
.Range("A1:J" & DerLig).Name = "Plage1"
With .LstResultat
.ColumnCount = 10
.BoundColumn = 1
'.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;"
.RowSource = "Plage1"
End With
End With
J'ai mis ce code à la place du mien dans mon formulaire
Je vois pas quoi mettre à la place de "Plage1"
Merci de ton aide
David
Dim DerLig As Long With Feuil2 DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 '.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .RowSource = "Plage1" End With End With
michdenis
| Je vois pas quoi mettre à la place de "Plage1"
.Range("A1:J" & DerLig).Name = "Plage1"
Cette ligne de code crée une plage nommée ayant comme NOM : "Plage1". Tu peux utiliser la chaîne de caractères de ton choix. Le nom doit débuter par une lettre ou le caractère "_" Il ne peut pas contenir un espace et il doit être d'une longueur maximale de 255 caractères. On peut dire que tu as le choix !
Dim DerLig As Long With Feuil2 DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 '.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .RowSource = "Plage1" End With End With
| Je vois pas quoi mettre à la place de "Plage1"
.Range("A1:J" & DerLig).Name = "Plage1"
Cette ligne de code crée une plage nommée
ayant comme NOM : "Plage1".
Tu peux utiliser la chaîne de caractères de ton choix.
Le nom doit débuter par une lettre ou le caractère "_"
Il ne peut pas contenir un espace et il doit être d'une
longueur maximale de 255 caractères. On peut dire
que tu as le choix !
Dim DerLig As Long
With Feuil2
DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues,
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
.Range("A1:J" & DerLig).Name = "Plage1"
With .LstResultat
.ColumnCount = 10
.BoundColumn = 1
'.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;"
.RowSource = "Plage1"
End With
End With
Cette ligne de code crée une plage nommée ayant comme NOM : "Plage1". Tu peux utiliser la chaîne de caractères de ton choix. Le nom doit débuter par une lettre ou le caractère "_" Il ne peut pas contenir un espace et il doit être d'une longueur maximale de 255 caractères. On peut dire que tu as le choix !
Dim DerLig As Long With Feuil2 DerLig = .Range("A:J").Find(What:="*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row .Range("A1:J" & DerLig).Name = "Plage1" With .LstResultat .ColumnCount = 10 .BoundColumn = 1 '.ColumnWidths = "15;15;15;15;15;15;15;15;15;15;" .RowSource = "Plage1" End With End With