Modif

Résolu
bonjour a tous
cet algo qui n'est pas automatique
 Sub plus1()
Dim Col, Deb, Fin As Integer
Dim Incr As Double
 Col = Application.InputBox("Colonne A")
Deb = Application.InputBox("Debut 10")
Fin = Application.InputBox("Fin 62")
Incr = Application.InputBox("Incrementation 1")
 Do
Range(Col & Deb) = Range(Col & Deb) + Incr
Deb = Deb + 1
Loop Until Deb = Fin + 1
End Sub

il faut que je rentre manuellement la colonne concernée BU
la ligne départ 10
La ligne Fin 62
je n'arrive pas a rentrer automatiquement ces conditions

merci beaucoup

vous êtes super!
merci à tous

2 réponses

  1. Re,

    Quand la demande est plus explicite, la réponse est plus simple :
    Option Explicit
    Sub plus1()
    Dim Lig As Integer, Incr As Integer
      Incr = 1
      For Lig = 10 To 62
        If ActiveSheet.Cells(Lig, "A").Font.Bold Then
          ActiveSheet.Cells(Lig, "BU").Value = ActiveSheet.Cells(Lig, "BU").Value + Incr
        End If
      Next Lig
    End Sub


    1. bonjour
      pour celle ci c'est quand Bold est False que l'on incrémente
      merci si tu peux me l'inverser
    2. @jack2125
         If Not ActiveSheet.Cells(Lig, "A").Font.Bold Then
  2. Bonjour,

    J'aurais écris :
    Option Explicit
    Sub plus1()
    Dim Col As String
    Dim Lig As Integer, Fin As Integer, Incr As Integer
      Col = "A"
      Lig = 10
      Fin = 62
      Incr = 1
      Do
        ActiveSheet.Cells(Lig, Col).Value = ActiveSheet.Cells(Lig, Col).Value + Incr
        Lig = Lig + 1
      Loop Until Lig > Fin
    End Sub

    Ou
    Option Explicit
    Sub plus1()
    Dim Col As String
    Dim Lig As Integer, Fin As Integer, Incr As Integer
      Col = "A"
      Lig = 10
      Fin = 62
      Incr = 1
      Do
        With ActiveSheet
          .Cells(Lig, Col).Value = .Cells(Lig, Col).Value + Incr
          Lig = Lig + 1
        End With
      Loop Until Lig > Fin
    End Sub


    1. salut Patrice
      merci pour ta réponse et elle ne me correspond pas
      je me suis sans doute mal exprimé
      l'incrémentation se fait en fonction de la colonne A de 10:62
      si l'une des cellules de A est écrit en gras on ne doit pas incrémenter la colonne BU de 10 à 62 même hauteur de ligne dans chaque cellule
      du type: If c.Font.Bold Then
      Application.EnableEvents = False
      c.Offset(0, 69) = "....
      et là je coince
      merci d'avance