VBA

Bonjour j'ai fait ceci : mais à marche seulement j'ai quelque chose en A1431 et il n'execute pas la macro sans doute du fait qu'il y a des cellules au dessus vide savez vous comment faire pour qu'il execute tout de même la macro?

Sub heuresréaliséessalarié3()
'
' heuresréaliséessalarié3 Macro

   If Len(Cells(1393, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1342")
      Range("P1342").FormulaR1C1 = "Salarié 3"
      Range("P1343").Select

   Else
      Exit Sub
    End If

   If Len(Cells(1394, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1359")
      Range("P1359").FormulaR1C1 = "Salarié 4"
      Range("P1360").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1395, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1376")
      Range("P1376").FormulaR1C1 = "Salarié 5"
      Range("P1377").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1396, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1393")
      Range("P1393").FormulaR1C1 = "Salarié 6"
      Range("P1394").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1397, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1410")
      Range("P1410").FormulaR1C1 = "Salarié 7"
      Range("P1411").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1398, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1427")
      Range("P1427").FormulaR1C1 = "Salarié 8"
      Range("P1428").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1399, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1444")
      Range("P1444").FormulaR1C1 = "Salarié 9"
      Range("P1445").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1400, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1461")
      Range("P1461").FormulaR1C1 = "Salarié 10"
      Range("P1462").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1401, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1478")
      Range("P1478").FormulaR1C1 = "Salarié 11"
      Range("P1479").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1402, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1495")
      Range("P1495").FormulaR1C1 = "Salarié 12"
      Range("P1496").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1403, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1512")
      Range("P1512").FormulaR1C1 = "Salarié 13"
      Range("P1513").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1404, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1529")
      Range("P1529").FormulaR1C1 = "Salarié 14"
      Range("P1530").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1405, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1546")
      Range("P1546").FormulaR1C1 = "Salarié 15"
      Range("P1547").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1406, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1563")
      Range("P1563").FormulaR1C1 = "Salarié 16"
      Range("P1564").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1407, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1580")
      Range("P1580").FormulaR1C1 = "Salarié 17"
      Range("P1581").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1408, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1597")
      Range("P1597").FormulaR1C1 = "Salarié 18"
      Range("P1598").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1409, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1614")
      Range("P1614").FormulaR1C1 = "Salarié 19"
      Range("P1615").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1410, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1631")
      Range("P1631").FormulaR1C1 = "Salarié 20"
      Range("P1632").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1411, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1648")
      Range("P1648").FormulaR1C1 = "Salarié "
      Range("P1649").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1412, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1665")
      Range("P1665").FormulaR1C1 = "Salarié "
      Range("P1666").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1413, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1682")
      Range("P1682").FormulaR1C1 = "Salarié "
      Range("P1683").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1414, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1699")
      Range("P1699").FormulaR1C1 = "Salarié "
      Range("P1700").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1415, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1716")
      Range("P1716").FormulaR1C1 = "Salarié "
      Range("P1717").Select

   Else
      Exit Sub
   End If

    If Len(Cells(1416, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1733")
      Range("P1733").FormulaR1C1 = "Salarié "
      Range("P1734").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1417, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1750")
      Range("P1750").FormulaR1C1 = "Salarié "
      Range("P1751").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1418, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1767")
      Range("P1767").FormulaR1C1 = "Salarié "
      Range("P1768").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1419, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1784")
      Range("P1784").FormulaR1C1 = "Salarié "
      Range("P1785").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1420, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1801")
      Range("P1801").FormulaR1C1 = "Salarié "
      Range("P1802").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1421, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1818")
      Range("P1818").FormulaR1C1 = "Salarié "
      Range("P1819").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1422, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1835")
      Range("P1835").FormulaR1C1 = "Salarié "
      Range("P1836").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1423, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1852")
      Range("P1852").FormulaR1C1 = "Salarié "
      Range("P1853").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1424, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1869")
      Range("P1869").FormulaR1C1 = "Salarié "
      Range("P1870").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1425, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1886")
      Range("P1886").FormulaR1C1 = "Salarié "
      Range("P1887").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1426, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1903")
      Range("P1903").FormulaR1C1 = "Salarié "
      Range("P1904").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1427, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1920")
      Range("P1920").FormulaR1C1 = "Salarié "
      Range("P1921").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1428, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1937")
      Range("P1937").FormulaR1C1 = "Salarié "
      Range("P1938").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1429, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1954")
      Range("P1954").FormulaR1C1 = "Salarié "
      Range("P1955").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1430, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1971")
      Range("P1971").FormulaR1C1 = "Salarié "
      Range("P1972").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1431, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P1988")
      Range("P1988").FormulaR1C1 = "Salarié "
      Range("P1989").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1432, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2005")
      Range("P2005").FormulaR1C1 = "Salarié "
      Range("P2006").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1433, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2022")
      Range("P2022").FormulaR1C1 = "Salarié "
      Range("P2023").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1434, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2039")
      Range("P2039").FormulaR1C1 = "Salarié "
      Range("P2040").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1435, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2056")
      Range("P2056").FormulaR1C1 = "Salarié "
      Range("P2057").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1436, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2073")
      Range("P2073").FormulaR1C1 = "Salarié "
      Range("P2074").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1437, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2090")
      Range("P2090").FormulaR1C1 = "Salarié "
      Range("P2091").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1438, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2107")
      Range("P2107").FormulaR1C1 = "Salarié "
      Range("P2108").Select

   Else
      Exit Sub
   End If

   If Len(Cells(1439, "A").Value) > 0 Then
      Range("P1325:BF1337").Copy Range("P2124")
      Range("P2124").FormulaR1C1 = "Salarié "
      Range("P2125").Select

   Else
      Exit Sub
   End If
End Sub

Merci d'avance

Bonjour,

Déjà enlever tout les :

Else
Exit Sub

Bonjour,

En inscrivant à la fin des conditions :

Else

Exit Sub

Cela met fin à la macro dès que la condition est fausse.

Mets en commentaire ou supprime les " Exit Sub " et les "Else" tant qu'à faire.

Teste

ric

P.S. Millaï, on s'est croisé ... bonjour

Bonjour j'ai retiré les

Else

Exit Sub

Mais le résultat est toujours le même

Savez vous ce qu"il faut que j'ajoute ?

Merci d'avance

Bonjour,

J'ai aussi enlevé la sélection de la ligne suivante après la copie.

Ici, ça fonctionne.

Teste le fichier joint.

ric

0angel28.xlsm (20.21 Ko)
Rechercher des sujets similaires à "vba"