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