rimbaut
Messages postés61Date d'inscriptionjeudi 19 mai 2005StatutMembreDernière intervention 1 juin 2014
-
26 juil. 2008 à 18:29
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
27 juil. 2008 à 16:43
Bonsoir,
Je voudrais effacer le contenu et le format des cellules mais mon code ci dessous ne s'exécute que partiellement. Je voudrais savoir pourquoi. Si quelqu'un veut bien m'aider je l'en remercie vivement.
Voici mon code :
Sub ViderFeuilleB600()
Worksheets("B600").Activate
Dim y_debut_salaire, y_fin_salaire As Integer
Dim y_debut_charge, y_fin_charge As Integer
Dim y As Integer
y = 8
'Ici nous supprimons le format et le contenu des dates des exercices
Sheets("b600").Range("c" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
'ici nous supprimonsle contenu des cellules salaire et leur format
y = y + 2
Do While Sheets("b600").Cells(y, 1).Value <> "" ' boucle tant que la cellule est non vide
Sheets("b600").Range("a" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
y = y + 1
Loop
' Ici nous supprimons les cellules "total"
y = y + 2
Sheets("b600").Range("a" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
' Ici nous supprimons les charges
y = y + 1
Do While Sheets("b600").Cells(y, 1).Value <> "" ' boucle tant que la cellule est non vide
Sheets("b600").Range("a" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
y = y + 1
Loop
' Ici nous supprimons le total des charges
y = y + 2
Sheets("b600").Range("a" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
' ici nous supprimons le taux moyen de charges
y = y + 2
Sheets("b600").Range("a" & y & ":d" & y).Select
Selection.ClearContents
Selection.ClearFormats
Sheets("b600").Range("f" & y & ":g" & y).Select
Selection.ClearContents
Selection.ClearFormats
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 27 juil. 2008 à 11:17
Ok
Récapitulons :
D'après ton programme, tu effaces :
Ligne 8 C-D et F-G
De ligne 10 à 10+x A-D et F-G
Une fois que tu es sorti de la boucle Do-Loop, "y" pointe sur une ligne qui est vide.
Donc le Y+2 qui suit veut dire que tu laisses 2 lignes vides avant de continuer.
C'est Ok ça ?
Ligne 10+x+2 A-D et F-G
De ligne 10+x+3 à 10+x+3+t A-D et F-G
Même remarque que ci-dessus
Ligne 10+x+3+t+2 A-D et F-G
Ligne 10+x+3+t+4 A-D et F-G
Voilà un exemple de données et les valeurs de "y" (exemple que tu aurais dû donner dans tes explications si tu avais voulu être clair et gagner du temps, le tien et le nôtre)
Ligne Contenu
8 Dates des excercices
9 vide
10 Salaires \
11 Salaires | Nombre de lignes inconnu
12 Salaires |
13 Salaires /
14 vide
15 vide
16 Total
17 vide
18 Charges \
19 Charges |
20 Charges | Nombre de lignes inconnu
21 Charges |
22 Charges /
23 vide
24 vide
25 Total charges
26 vide
27 Taux moyen charges
Est-ce cohérent avec ce que tu as sous les yeux ?
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 26 juil. 2008 à 20:50
Quelles précisions
Avec ce genre de renseignement, on va aller loin ...
Si ce n'est pas trop te demander (si tu veux toujours qu'on tente de trouver la raison du problème), quelles sont les cellules vidées ?
Où s'arrête t-il ?
Dasn ton programme, tu fais référence à plusieurs colonnes et lignes :
C-D, F-G, puis A-D ...
Lesquelles sont-elles vidées ?
Jusqu'où ton programme semble t-il marcher ?
As-tu revu la valeur de Y pour vérifier que que son évolution coïncide bien avec tes lignes de données ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
rimbaut
Messages postés61Date d'inscriptionjeudi 19 mai 2005StatutMembreDernière intervention 1 juin 2014 27 juil. 2008 à 00:41
Je viens de vérifier la valeur de y et j'arrive à pratiquement tout effacer sauf les lignes qui ne comportent pas de valeur mais qui sont formatées et qui se situent à la ligne 12 et 23