Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Reporter la valeur d'une cellule sous condition

nak

XLDnaute Occasionnel
Bonjour à tous,

Voila je souhaite transformer un tableau avec différentes conditions. Voici la macro qui ne fonctionne pas

Donc j'ajoute une colonne en A
Ensuite je fais une recherche dans la colonne B, si je trouve le texte "Fonction" je reporte la cellule de droite sur la cellule de gauche (par rapport à la colonne B).
Enfin je fais une recherche dans la colonne A, dès que je trouve un nombre je le reporte sur la cellule du dessous si elle est vide. Sur cette dernière fonction je pense qu'il est facile de planter excel en créant une boucle.

Bref j'ai les idées mais malgré mes efforts je ne trouve pas la solution.
Je joins un fichier exemple, en feuille 1 le tableau original, en feuille 2 le résultat que j'aimerais avoir.

Si quelqu'un peut m'aiguiller SVP

Merci
 

Pièces jointes

  • exemple.xls
    15.5 KB · Affichages: 127
  • exemple.xls
    15.5 KB · Affichages: 135
  • exemple.xls
    15.5 KB · Affichages: 136

ERIC S

XLDnaute Barbatruc
Re : Reporter la valeur d'une cellule sous condition

Bonjour

a essayer

Code:
Sub Macro2()
Columns("A:A").Insert Shift:=xlToRight
Dim i As Integer, derligne As Long
derligne = Range("B65536").End(xlUp).Row
Application.ScreenUpdating = False
For i = 1 To derligne
    If UCase(Range("B" & i).Value) Like "FONCTION" Then
        Cells(i, 1).Value = Cells(i, 3).Value
    Else
        If i > 1 Then Cells(i, 1).Value = Cells(i - 1, 1).Value
    End If
Next i
Application.ScreenUpdating = True

End Sub
 

nak

XLDnaute Occasionnel
Re : Reporter la valeur d'une cellule sous condition

Dommage mais cela ne fonctionne pas...
Je pense que cela vient de l'utilisation du = , en fait aucune copie est réalisée.
Quelle fonction pour la remplacer ?

Merci
 

JNP

XLDnaute Barbatruc
Re : Reporter la valeur d'une cellule sous condition

Bonjour le fil ,
Tu as du te tromper dans l'utilisation de la macro d'Eric, car chez moi, la feuille 1 devient copie conforme de la feuille 2 que tu souhaites ...
Refait un essai, peut-être en vérifiant que c'est bien ta feuille 1 qui est activée, la feuille n'est pas spécifiée dans la macro.
Bonne soirée
 

JNP

XLDnaute Barbatruc
Re : Reporter la valeur d'une cellule sous condition

Re ,
La macro d'Eric avec l'obligation d'utiliser la feuille 1
Code:
Sub Macro2()
With Sheets("Feuil1")
.Columns("A:A").Insert Shift:=xlToRight
Dim i As Integer, derligne As Long
derligne = .Range("B65536").End(xlUp).Row
Application.ScreenUpdating = False
For i = 1 To derligne
    If UCase(.Range("B" & i).Value) Like "FONCTION" Then
        .Cells(i, 1).Value = .Cells(i, 3).Value
    Else
        If i > 1 Then .Cells(i, 1).Value = .Cells(i - 1, 1).Value
    End If
Next i
Application.ScreenUpdating = True
End With
End Sub
Bonne soirée
 

Discussions similaires

Réponses
4
Affichages
351
Réponses
9
Affichages
241
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…