Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Modif Code d'un Bouton

MuscatMimi

XLDnaute Accro
Bonsoir a tout le Forum et joyeuses fêtes a tous

J'a ce Code de D Josserand qui date de 2005,Je désire commencer a valider Les données d'une ligne de ma ListBox a partir de la ligne 12
de ma feuille,et ainsi de suite,j'y arrive pas

VB:
Private Sub CommandButton2_Click()
Dim L As Integer, x As Byte
L = Sheets("Feuil1").Range("B600").End(xlUp).Row + 1 'incrémente données
    With Me.ListBox2
        For x = 0 To .ListCount - 1
            If .Selected(x) = True Then
                'Feuil1.Range("A" & L) = .Column(0, x)
                Feuil1.Range("B" & L) = .Column(0, x)
                Feuil1.Range("C" & L) = .Column(1, x)
                
                L = L + 1
            End If
        Next x
    End With
End Sub

Merci a tous a l'avance,prenez soin de vous
Cordialement
christian
 

Staple1600

XLDnaute Barbatruc
Re

Si c'est grave (relis la charte du forum... )
Sinon pour la question, voici comment je vois la chose
VB:
'*********Staple1600 2020 (le dernier jour)*********

Private Sub CommandButton2_Click()
 With Me.ListBox2
 Sheets("Feuil1").Cells(Rows.Count, 2).End(3)(2).Resize(, 2) = _
 Array(.Column(0, .ListIndex), .Column(1, .ListIndex))
 End With
End Sub

Private Sub ListBox2_Click()
CommandButton2.Visible = True
End Sub

Private Sub UserForm_Initialize()
With Sheets("Feuil2")
   ListBox2.List = .Range("B2:C" & .Range("C65536").End(xlUp).Row).Value
End With
CommandButton2.Visible = False
End Sub
 

laurent950

XLDnaute Accro
Bonjour @Staple1600

J'ai une question que j'ai essayer de développer : (je me trompe a qu'elle endroit ?)

Sheets("Feuil1").Cells(Rows.Count, 2).End(3)(2).Resize(, 2) = ""
Feuille 1
Cellule (Colonne 2) soit colonne B ' Pour 2
Rows.Count = ' Dernière cellule non vide de la colonne 2 avec :
- End(3) ' C'est l'équivalent de Xlup pour le code 3 ?
- Puis se qui suit (2) C'est la colonne 2 soit la colonne B
Resize :
- Cellule active avec déplacement d'une sur la droite : Soit Colonne B et C
 

Staple1600

XLDnaute Barbatruc
Re

=>laurent950
(à tester sur une feuille vierge)

VB:
Sub Questions_A_Laurent()
Dim Umma As Range, Gumma As Range
Randomize 1600
Columns(2).Clear
Cells(Int((Rnd * 17) + 1), 2) = "Staple"
Set Umma = Cells(Rows.Count, "B").End(xlUp).Offset(1, 0)
Set Gumma = Cells(Rows.Count, 2).End(3)(2)
zX = Umma.Address(0, 0): zY = Gumma.Address(0, 0)
MsgBox Umma.Address = Gumma.Address, vbInformation, zX & "<|>" & zY
MsgBox Umma.Resize(, 2).Address
With Application
Umma.Resize(, 2) = Array(.UserName, .UsableWidth)
End With
End Sub

Fiat Lux, désormais ?
 

patricktoulon

XLDnaute Barbatruc
bonsoir a tous
J'a ce Code de D Josserand qui date de 2005,Je désire commencer a valider Les données d'une ligne de ma ListBox a partir de la ligne 12
de ma feuille,et ainsi de suite,j'y arrive pas
on va faire simple si vous le voulez bien
VB:
Option Explicit
Private Sub CommandButton2_Click()
    Dim L&, x&
    L = Application.Max(12, Sheets("Feuil1").Range("B" & Rows.Count).End(xlUp).Row + 1)    '12 ou plus!!!!!
    With Me.ListBox2
        For x = 0 To .ListCount - 1
            If .Selected(x) Then Feuil1.Range("B" & L).Resize(, 2) = Array(.List(x, 0), .List(x, 1)): L = L + 1
        Next x
    End With
End Sub

Private Sub ListBox2_Click()
    CommandButton2.Visible = True
End Sub

Private Sub UserForm_Initialize()
    ListBox2.List() = Feuil2.Range("B2", Feuil2.Range("C" & Rows.Count).End(xlUp)).Value
    CommandButton2.Visible = False
End Sub
si plus de 2 ou 3 colonne pour la listbox je peux vous montrer comment on simplifie l'array
et rowssource oubliez si vous l'utilisez en vba ca n'a pas de sens

bien sur si vous voulez que la boucle ai un sens mettez la listbox en multiselect
sinon remplacer ceci
VB:
  For x = 0 To .ListCount - 1
            If .Selected(x) Then Feuil1.Range("B" & L).Resize(, 2) = Array(.List(x, 0), .List(x, 1)): L = L + 1
        Next x
par cela
Code:
Feuil1.Range("B" & L).Resize(, 2) = Array(.List(.listindex, 0), .List(.listindex, 1))
 
Dernière édition:
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…