Vb - excell - remplissage automatique de cell
Résolu
darkkjarod
-
Papou93 Messages postés 146 Date d'inscription Statut Membre Dernière intervention -
Papou93 Messages postés 146 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Vb - excell - remplissage automatique de cell
- Logiciel de sauvegarde automatique gratuit - Guide
- Réponse automatique thunderbird - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Vb - Télécharger - Langages
- Starlink direct to cell prix - Accueil - Opérateurs & Forfaits
5 réponses
Bonjour,
merci pour ta reponse. C est en fait un peu plus complique car A et D dans ton exemple " bougent" donc je voudrais le faire en disant pour la colonne avec l'intutile "XY" si la valeur a gauche est remplie alors mettre B. tu vois la difference?
merci pour ta reponse. C est en fait un peu plus complique car A et D dans ton exemple " bougent" donc je voudrais le faire en disant pour la colonne avec l'intutile "XY" si la valeur a gauche est remplie alors mettre B. tu vois la difference?
Bonjour stephane,
Exemple de code à écrire dans une macro ou une procédure événementielle :
Ce programme teste si la cellule A1 de la ligne sélectionnée contient une valeur, et si oui, remplit la cellule D1 avec la valeur 31.
Tu peux bien sûr modifier ces adresses et valeurs à ta convenance !
Espérant avoir répondu.
Cordialement.
Exemple de code à écrire dans une macro ou une procédure événementielle :
With ActiveCell.EntireRow If .Range("A1") <> "" Then .Range("D1") = "31" End With
Ce programme teste si la cellule A1 de la ligne sélectionnée contient une valeur, et si oui, remplit la cellule D1 avec la valeur 31.
Tu peux bien sûr modifier ces adresses et valeurs à ta convenance !
Espérant avoir répondu.
Cordialement.
j'ai ecris le debut:
Sub formatIASpurpose()
deb = 14 'Debut des données à traiter
Findata = Cells.Find("*", Range("A1"), xlFormulas, , xlByRows, xlPrevious).Row
FindataCol = Cells.Find("*", Range("A3"), xlFormulas, , xlByRows, xlPrevious).Column
For j = 1 To FindataCol
If Cells(3, j).Value = "IAS Purpose" Then
Range(Cells(deb, j), Cells(Findata, j)).Select
Selection.TextToColumns Destination:=Cells(deb, j), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
For i = deb To Findata
x = Range(Cells(i, j), Cells(i, j)).Value
If (ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value) <> "" Then
ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value = "b"
End If
Next i
Else
End If
Next j
End Sub
Mon probleme c est que si je fait ca:
ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value = "b"
je l fais sur la valeur presente. comment modifier ActiveSheet.Range(Cells(i, j), Cells(i, j)) pour qu'il mette le b dans la colone de droite?
Sub formatIASpurpose()
deb = 14 'Debut des données à traiter
Findata = Cells.Find("*", Range("A1"), xlFormulas, , xlByRows, xlPrevious).Row
FindataCol = Cells.Find("*", Range("A3"), xlFormulas, , xlByRows, xlPrevious).Column
For j = 1 To FindataCol
If Cells(3, j).Value = "IAS Purpose" Then
Range(Cells(deb, j), Cells(Findata, j)).Select
Selection.TextToColumns Destination:=Cells(deb, j), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
For i = deb To Findata
x = Range(Cells(i, j), Cells(i, j)).Value
If (ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value) <> "" Then
ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value = "b"
End If
Next i
Else
End If
Next j
End Sub
Mon probleme c est que si je fait ca:
ActiveSheet.Range(Cells(i, j), Cells(i, j)).Value = "b"
je l fais sur la valeur presente. comment modifier ActiveSheet.Range(Cells(i, j), Cells(i, j)) pour qu'il mette le b dans la colone de droite?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Rebonjour,
Je ne comprends pas pourquoi "les cellules bougent". Les références A1 & D1 correspondent aux colonnes A & D, le 1 faisant référence à la ligne en cours. Par contre, comme l"analyse des cellules se fait dans une boucle, il est effectivement préférable de désigner les cellules par Cells au lieu de Range. Quant au référencement de la cellule de droite, le père a, je pense, répondu à la question.
Cordialement.
Je ne comprends pas pourquoi "les cellules bougent". Les références A1 & D1 correspondent aux colonnes A & D, le 1 faisant référence à la ligne en cours. Par contre, comme l"analyse des cellules se fait dans une boucle, il est effectivement préférable de désigner les cellules par Cells au lieu de Range. Quant au référencement de la cellule de droite, le père a, je pense, répondu à la question.
Cordialement.