Copier et effacer valeur a partir listbox-vba

lgvba

XLDnaute Nouveau
Bonjour

Jai ' besoin d ' aide avec le code suivant qui me permet de transferer les lignes selectionner dans la lisbox afin de les transfer dans une autre feuille, mais je voudrais rajouter le code afin d effacer la ligne selectionner apres avoir transferer les donnes

Voici le debut de Code
Code:
Private Sub complete_ar_Click() 
    Dim iListCount As Integer, iColCount As Integer 
    Dim iRow As Integer 
    Dim rStartCell As Range 
     'Set a range variable to the first cell to recieve our data
     'Using "End(xlUp).Offset(1, 0)" _
    will give us the cell below the last entry 
    Set rStartCell = Spotclassified.Range("A65536").End(xlUp).Offset(1, 0) 
     'Loop as many times (less one) as there are entries in our list.
     'We must start from zero to use this in the Selected Property.
    For iListCount = 0 To ListBox2.ListCount - 1 
        If ListBox2.Selected(iListCount) = True Then 'User has selected
             
            ListBox2.Selected(iListCount) = False 
            iRow = iRow + 1 
             'Now loop as many times as there are columns in MyRange
            For iColCount = 0 To Range("plageprogress").Columns.Count - 1 
                 'place the selected data into the table, starting from _
                range Ax And moving across As many columns As there are _ 
                In the range MyRange. 
                rStartCell.Cells(iRow, iColCount + 1).Value = _ 
                ListBox2.List(iListCount, iColCount) 
                 
            Next iColCount 
        End If 
    Next iListCount 
    Set rStartCell = Nothing 
End Sub

Cdt

lgvba
 

lgvba

XLDnaute Nouveau
Re : Copier et effacer valeur a partir listbox-vba

oSalu Camarchepas

Oui je reviens avec le:D,:p, tu est un As , vraiment magnifique.

J' ai juste besoin de tes lumieres , car je souhaite integrer deux conditions dans le code,

Je souhaiterais que la date du jour, apparaisse toujour dans la derniere cellule de ma ligne qui est transferer dans ma feuille"SPOTCLASSIFIED", donc la date du jour se trouvera toujour en colonne H de ma feuille"SPOTCLASSIFIED".

Et ma derniere condition serais que si la ligne que je selectionne dans ma listebox a une valeur inferieur a 50 dans la colonne F, cette ligne serais transferer dans la feuille "SPOTCANCEL",


Ces juste ces dernier code dont j ' ai besoin afin de finaliser ma programmation.

Je te remerci infiniment pour ton aide

cdt lgvba
 

camarchepas

XLDnaute Barbatruc
Re : Copier et effacer valeur a partir listbox-vba

Lgvba ,

Voici , dis moi , les commentaires en anglais c'est normal ou pas , lol.

;);)

Code:
Private Sub complete_ar_Click()
 Dim iListCount As Integer, iColCount As Integer
 Dim iRow As Integer
 Dim rStartCell As Range
 'Set a range variable to the first cell to recieve our data
 'Using "End(xlUp).Offset(1, 0)" _
  will give us the cell below the last entry

  'Loop as many times (less one) as there are entries in our list.
  'We must start from zero to use this in the Selected Property.
  For iListCount = 0 To ListBox2.ListCount - 1
     If ListBox2.Selected(iListCount) = True Then 'User has selected
       iRow = ListBox2.ListIndex + 1
       
    ' Ici test valeur > 50
       
       If Range("plageprogress").Cells(iRow, 6) > 50 Then
           Set rStartCell = SPOTCLASSIFIED.Range("A65536").End(xlUp).Offset(1, 0)
        Else
           Set rStartCell = SPOTCANCEL.Range("A65536").End(xlUp).Offset(1, 0)
       End If
       
       ListBox2.Selected(iListCount) = False
       'Now loop as many times as there are columns in MyRange
       For iColCount = 0 To Range("plageprogress").Columns.Count - 1
        'place the selected data into the table, starting from _
         range Ax And moving across As many columns As there are _
         In the range MyRange.
         rStartCell.Cells(1, iColCount + 1).Value = ListBox2.List(iListCount, iColCount)
                   
       Next iColCount
       
     ' Et là la date et l'heure en fonction du format e la colonne de la feuille
       
       rStartCell.Cells(1, iColCount).Value = Now
       
       Range("plageprogress").Rows(iRow).Delete
            
     End If
  Next iListCount
 Set rStartCell = Nothing
End Sub
 

lgvba

XLDnaute Nouveau
Re : Copier et effacer valeur a partir listbox-vba

Salu canemarche pas

C' est super, sa fonctionne.......................... Excellent

Aller , je peut pas m ' empecher d ' un dernier code pour la route, je t ' avertie ;a c un peu lus compliquer

j essaie de mettre en place un envoi de message par macro, je souhaiterais que la ligne selectionner dans ma listbox2 qui est inferieur a 50 et transferer dans la feuille "SPOTCANCEL", soit mis en meme temps dans le corps d' un message electronique que j enverais par macro.

il me faudrais je trouve le bon code pour completer le code creer

myitem.Body ?

Mon code ce présente comme ceci

Code:
Call mail

Sub mail()
Dim Destinataire As String
Destinataire = "TOTO@GMAIL.com"
Dim Objetmessage As String
Objetmessage = "SPOT CANCEL"
Dim ol As Object, myitem As Object
Application.ScreenUpdating = False

Set ol = CreateObject("outlook.application")
Set myitem = ol.CreateItem(olMailItem)
myitem.To = Destinataire
myitem.cc = "FAYA@GGMAIL.com"
myitem.Subject = Objetmessage
myitem.Body = 

myitem.display
myitem.send
Set ol = Nothing

End Sub

je te remercie poujr ce dernier coup de pouce.

cdt lgvba
 

camarchepas

XLDnaute Barbatruc
Re : Copier et effacer valeur a partir listbox-vba

Bonjour ,

J'ai du créer un autre classeur car le vba était bloqué par mot de passe et je ne pouvais ajouter la référence à outlook.

J'ai réussi à m'envoyer donc ça marche , de plus , j'ai récupéré une routine à moi , car la tienne était bugguée.

Enfin voici le code ,

Waouh , tu à les oreilles qui se décollent , tellement tu as le sourire , ...
 

Pièces jointes

  • TestEnvoisMail.xls
    119 KB · Affichages: 54
  • TestEnvoisMail.xls
    119 KB · Affichages: 62
  • TestEnvoisMail.xls
    119 KB · Affichages: 59

camarchepas

XLDnaute Barbatruc
Re : Copier et effacer valeur a partir listbox-vba

Lgvba,

ATTENTION, il faudra surement chargé la bonne référence microsoft Outlook , car je suis en office 2010 et en 2003, elle ne se trouve pas au même endroit et n'a pas le même nom d'ailleur.
Alors , lorsque ton fichier est ouvert ,
ALT F11 pour allez sur l'éditeur VBA.
Puis le menu Outils
Références

et la une liste déroulante où il faut trouver :

Microsoft outlook xx.x object library ou xx;x est bien sur le numéro de version dispo sur ton micro .

Voilà , bon tests maintenant
 

lgvba

XLDnaute Nouveau
Re : Copier et effacer valeur a partir listbox-vba

Merci canemarchepas..J' ai pu tester et retester ton code et ta routine,, et j ' ai le smile j usqu au oreille..........


Encore chapeau, la macro fonctionne a merveille, parcontre juste deux petit detail,, je voudrais savoir s ; il etait possible davoir l ' entete (intitulé eg client name, HAWB) qui apparait dans le corps du message au lieu de juste une ligne avec des virgules..(si c pas possible c pas grave)

Et enfin , serait t ' il possible d 'avoir le code vba afin de rajouter la valeur de ma combobox 1 a coter de la date en colonne J dans ma feuille "spotcancel" quand je fait la selection dans ma listbox.


je te remercie toute ton aide precieuse.

Lgvba
 

camarchepas

XLDnaute Barbatruc
Re : Copier et effacer valeur a partir listbox-vba

Bonsoir lgvba,

Bon un peu chaud l'emploi du temps , je reste sur des trucs très simples pour me défouler les neurones.

Voilà , comme demandé , bon il y aurait un petit effort de synchro en position de l'entête et des données.

Tu peux peut être essayer de le faire ?

Sinon reviens vers moi , et dès que je peu je te le solutionne
 

Pièces jointes

  • TestEnvoisMail.xls
    119 KB · Affichages: 60
  • TestEnvoisMail.xls
    119 KB · Affichages: 62
  • TestEnvoisMail.xls
    119 KB · Affichages: 65

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet