Dernière colonne non vide

Bonjour,

J'ai un problème lorsque je demande au code de m'afficher la dernière colonne utilisé sur la ligne 3 de la feuille "mensuel1", il me dit constamment que c'est la colonne 256 or c'est faut! je n'utilise pas 256 colonnes...

j'utilise le code suivant :

Dercol = 0

MsgBox (Dercol)

Dercol = Worksheets("mensuel1").Range("A3").SpecialCells(xlCellTypeLastCell).Column

MsgBox (Dercol)

il fonctionne parfaitement lorsque je fais des tests sur d'autre fichiers...

Je vous joints donc mon fichier pour que vous voyez le problème

merci beaucoup

Bonjour

Essayes cette macro pour trouver la dernière colonne de la ligne 3

DerCol = Worksheets("mensuel1").Cells(3, Columns.Count).End(xlToLeft).Column

Marche nickel merci !

Autre petite question svp :

pourquoi la fusion des cellules ne fonctionne pas avec ce bout de code :

Range(Worksheets("mensuel1").Cells(3, 3), Worksheets("mensuel1").Cells(3, 4)).Merge

venant du code général suivant :

Sub Recup()

    Dim Plage As Range
    Dim NomFeuille As String
    Dim feuilleinitiale As String
    Dim tableau1()    ' représente les différents sites
    Dim tableau2()    ' représente les repos habituel
    Dim Dercol As Integer

    feuilleinitiale = CStr(Val(ActiveSheet.Name))

    With Worksheets(feuilleinitiale)
        'définie la plage a` recopier dans l'onglet de base
        Set Plage = .Range(.Cells(1, 1), .Cells(80, 40))
        tableau1 = Range("A4:P21")
        tableau2 = Range("A23:T30")
    End With

    With Worksheets("mensuel1")

' chercher la dernière colonne non utilisée sur la ligne 3

        For i = 7 To 37
            If .Cells(i, 2).Value = feuilleinitiale Then    ' And Worksheets(feuilleinitiale).Cells(5, 1) <> "" Then
                ' vérifier qu'on soit bien a la même date

                       Dercol = 0
        MsgBox (Dercol)
        Dercol = Worksheets("mensuel1").Cells(3, Columns.Count).End(xlToLeft).Column

        MsgBox (Dercol)

                If Worksheets(feuilleinitiale).Cells(5, 1) <> "" Then
                    'vérifier qu'il y a qqn au premier site
                    If .Cells(3, 3) = "" Then
                        '   .Cells(3, 3).Value = Cells(5, 1).Value    'Le value est en option
                        .Cells(3, 3).Value = Cells(5, 1).Value 'coller le contenu copié dans la nouvelle feuille créé a` partir de la cellule A1
                        '   MsgBox (Worksheets(feuilleinitiale).Cells(5, 1).Value) 'Le value est en option
                      Range(Worksheets("mensuel1").Cells(3, 3), Worksheets("mensuel1").Cells(3, 4)).Merge
                    End If
                End If
            End If
        Next i
    End With

End Sub

merci

Bonsoir

Comme tu es "dans" une feuille

    With Worksheets("mensuel1")

Essayes

.Range(.Cells(3, 3), .Cells(3, 4)).Merge

Sinon il faut ton fichier

Rechercher des sujets similaires à "derniere colonne vide"