Vba excel ligne selectionnée, colonne donnée

Résolu
batbat52 Messages postés 141 Statut Membre -  
batbat52 Messages postés 141 Statut Membre -
Bonjour,
Je débute en vba sous excel, et je dois fusionner certaines cellules d'une ligne sélectionnée. Autrement dis pouvez-vous me donner le code qui permet par exemple dans la ligne selectionné, de la colonne B à K : fusionner les cellules.
Excusez moi si je me suis mal exprimée mais ce n'est pas facile
Merci d'avance
Batbat52
Configuration: Programmation

16 réponses

  1. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    As-tu essayé d'enregistrer la macro manuellement? et après tu peux aller récupérer le code
    1
  2. batbat52 Messages postés 141 Statut Membre 9
     
    oui mais ça me m'enregistre le numéro des cellules et mon problème est que je ne sait pas ce qu'il faut mettre pour que ça corresponde à la ligne selectionnée et la colonne que je désire
    0
  3. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Et comment souhaites tu définir les colonnes et les cases que tu désires avant de les fusionner?
    0
  4. batbat52 Messages postés 141 Statut Membre 9
     
    en faite j'aimerais que l'utilisateur selectionne une ligne et qu'en cliquant sur un bouton les cellules de colonne b et c de cette ligne selectionnée fusionne
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. batbat52 Messages postés 141 Statut Membre 9
     
    Personne ne peut m'aider????!!
    0
  7. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    En faisant comme ça:
    Private Sub CommandButton1_Click()
    Dim lig As Long
    
        lig = Selection.Row
        Range("B" & lig & ":C" & lig).Select
        Selection.Merge
        
    
    End Sub
    


    ;o)
    0
  8. batbat52 Messages postés 141 Statut Membre 9
     
    Merci beaucoup beaucoup Polux31 :)
    0
  9. batbat52 Messages postés 141 Statut Membre 9
     
    J'ai un autre petit souci je doi afficher dans la ligne selectionné en colonne b "semaine n" ou n est le numéro de la semaine de lannée correspondant à la date située une cellule au dessus.
    0
  10. Polux31 Messages postés 7219 Statut Membre 1 204
     
    On peut faire comme ça:

    Private Sub CommandButton1_Click()
    Dim lig As Long
    Dim NumWeek As Integer
    
        lig = Selection.Row
        NumWeek = DatePart("ww", Range("B" & lig - 1).Value)
        Range("B" & lig).Value = "N° de semaine: " & NumWeek
        Range("B" & lig & ":C" & lig).Select
        Selection.Merge
        Selection.HorizontalAlignment = xlCenter
    
    End Sub
    0
  11. batbat52 Messages postés 141 Statut Membre 9
     
    Voila j'ai fait ceci mais biensur ça ne va pas au niveau de la variable f. Merci d'avance

    f = lig - 1
    Cells(lig, 2).Select
    ActiveCell.FormulaR1C1 = "=NO.SEMAINE(RfC2,2)-1"
    0
  12. batbat52 Messages postés 141 Statut Membre 9
     
    ça marche !!!! Merci bcp
    0
  13. Polux31 Messages postés 7219 Statut Membre 1 204
     
    De rien,

    Pense à mettre le topic en Résolu.

    Merci et bon courage
    0
  14. batbat52 Messages postés 141 Statut Membre 9
     
    allé jamais deux problèmes sans trois et cette fois c'est le dernier promis ^^ j'ai un bouton qui excécute ma macro mais jaimerais quil descende en même temps que la page que je puisse le voir tout le temps en faite Encore un grand merci ^^
    0
  15. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Pourquoi ne pas mettre le bouton dans la barre de menu ? Il sera toujours visible et surtout moins compliqué à replacer dans la feuille :o)

    Voilà comment faire :

    Dans VBE (l'éditeur VB Alt + F11), il faut créer un module et copier/coller le code ci dessous :
    Option Explicit
    
    Private cb As CommandBar
    Private cbb10 As CommandBarButton
    
    Public Sub config_barre_XL()
        'Création de la barre de menu
        Set cb = CommandBars.Add
        With cb
            .Name = "Ma barre perso"
            .Position = msoBarTop
            .Visible = True
        End With
        
        'Ajout Le bouton du menu
        Set cbb10 = cb.Controls.Add(msoControlButton)
        With cbb10
            .OnAction = "Effectuer_La_Tache"    'l'action a réaliser sur le click du bouton
            .Caption = "Mon bouton"             'Le nom qui doit être affiché sur le bouton"
            .Style = msoButtonCaption
        End With
        
    End Sub
    
    Public Sub Supp_Bouton()
    Dim cb
    
    With Application
            For Each cb In .CommandBars
                'Toutes les barres autres que celle de l'application sont réaffichées
                If cb.Name = "Ma barre perso" Then
                    cb.Enabled = False
                    cb.Delete
                End If
            Next cb
        End With
        
    End Sub
    
    Private Sub Effectuer_La_Tache()
    Dim lig As Long
    Dim NumWeek As Integer
    
        lig = Selection.Row
        NumWeek = DatePart("ww", Range("B" & lig - 1).Value)
        Range("B" & lig).Value = "N° de semaine: " & NumWeek
        Range("B" & lig & ":C" & lig).Select
        Selection.Merge
        Selection.HorizontalAlignment = xlCenter
        
    End Sub
    


    Ensuite dans ThisWorkbook, il faut copier/coller ça :
    Option Explicit
    
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        Module1.Supp_Bouton
    End Sub
    
    Private Sub Workbook_Open()
        Module1.config_barre_XL
    End Sub


    Tu sauvegarde le fichier, tu le fermes et tu l'ouvres. Tu trouveras ton bouton dans la barre de menu Excel ...

    N'oublies pas de supprimer le bouton de ta feuille et le code associé !!!

    ;o)
    0
  16. batbat52 Messages postés 141 Statut Membre 9
     
    c'est bon j'ai enfin trouvé
    0
  17. batbat52 Messages postés 141 Statut Membre 9
     
    Merci mille fois c super!!
    0