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

XL 2010 DATE

christine854

XLDnaute Junior
Bonjour à tous

J'ai un classeur dans lequel je souhaiterai inscrire automatiquement des dates en fonction de la présence du texte "test" dans une colonne pour chaque numéro correspondant et faire un copier-coller d’une de ces dates dans une autre feuille pour le numéro correspondant

Dans le feuille 2 en fonction des conditions la colonne T et (ou) U réceptionneront les dates.*

Dans la feuille 1 en fonction des conditions la colonne AW réceptionne le copier-coller*

Dates = format dd/mm/yyyy mois en cours -1 figer le jour au 01.

*pour chaque numéro correspondant


Si date en T et U = suppression des dates existante en T et U pour le numéro concerné.


Si "test" en colonne C et si pas de date en colonne T pour le numéro correspondant = date (format dd/mm/yyyy) en colonne T pour le numéro correspondant et copier-coller de cette date en feuille 1 colonne AW pour le numéro correspondant.


Si présence du texte "test" en colonne C et si présence de date en colonne T pour le numéro correspondant = copier-coller de cette date en feuille 1 colonne AW pour le numéro correspondant.


Si pas de présence du texte "test" en colonne C et si pas de présence de date en colonne T pour le numéro correspondant = aucune action.


Si pas de présence du texte "test" en colonne C et si présence de date en colonne T pour le numéro correspondant = date (format dd/mm/yyyy) en colonne U pour le numéro correspondant.


J’ai tenté quelque chose en vba mais sans résultat

Code:
Sub test()

tabloValid = Feuil2.Range("A2:C" & Feuil1.Cells(Rows.Count, 1).End(xlUp).Row)
Dim miniTablo()
Application.ScreenUpdating = False
For i = 1 To UBound(tabloValid)
    With Feuil2
      
       If .Cells(ligneID, 20) = Date _
       And .Cells(ligneID, 21) = Date Then
        .Cells(ligneID, 20) = ""
        .Cells(ligneID, 21) = ""
       Else
          
           ligneID = Application.Match(tabloValid(i, 1), .[A:A], 0)
          
          
            If tabloValid(i, 3) = "test" _
            And .Cells(ligneID, 20) = "" Then
            .Cells(ligneID, 20) = DateSerial(Year(Date), Month(Date) - 1, 1)
            End If
          
            If tabloValid(i, 3) = "test" _
            And .Cells(ligneID, 20) = Date Then
          
            If tabloValid(i, 3) = "" _
            And .Cells(ligneID, 20) = "" Then
          
             If tabloValid(i, 3) = "" _
            And .Cells(ligneID, 20) = Date Then
            .Cells(ligneID, 21) = DateSerial(Year(Date), Month(Date) - 1, 1)
                End If
              
              
                ReDim miniTablo(1 To 8)
                For x = 1 To 8
                    miniTablo(x) = tabloValid(i, x)
                Next x
                If tabloValid(i, 3) = "test" Then
                  
                   Feuil1.Cells(Rows.Count, 49).End(xlUp).Offset(1, 0).Resize(1, 8) = miniTablo
                End If
          
         
             
        End If
    End With
Next i
Application.ScreenUpdating = True
End Sub
 

Pièces jointes

  • DATE.xlsm
    26.4 KB · Affichages: 31

JBARBE

XLDnaute Barbatruc
Bonsoir à tous,
Peut-être ceci si j'ai bien compris (et ce n'est pas facile ) et en cliquant sur le bouton GO
Bonne soirée
 

Pièces jointes

  • DATE.xlsm
    39.9 KB · Affichages: 31
Dernière édition:

JBARBE

XLDnaute Barbatruc
Re,
Pas trés clair tout cela malgré ce super logigramme !
Pourquoi :
Création de la date colonne T (format 01/mm/yyyy )
Alors que colonne T il y a déjà les dates crées en référence pour la copie !!!!
Bonne journée !
 

christine854

XLDnaute Junior
bonjour, je réitère ma demande concernant un classeur dans lequel je souhaiterai inscrire automatiquement des dates en fonction de la présence du texte "test" dans une colonne pour chaque numéro correspondant et faire un copier-coller d’une de ces dates dans une autre feuille pour le numéro correspondant

Dans le feuille 2 en fonction des conditions la colonne T et (ou) U réceptionneront les dates.*

Dans la feuille 1 en fonction des conditions la colonne AW réceptionne le copier-coller*

Dates = format dd/mm/yyyy mois en cours -1 figer le jour au 01.

*pour chaque numéro correspondant


Si date en T et U = suppression des dates existante en T et U pour le numéro concerné.


Si "test" en colonne C et si pas de date en colonne T pour le numéro correspondant = date (format dd/mm/yyyy) en colonne T pour le numéro correspondant et copier-coller de cette date en feuille 1 colonne AW pour le numéro correspondant.


Si présence du texte "test" en colonne C et si présence de date en colonne T pour le numéro correspondant = copier-coller de cette date en feuille 1 colonne AW pour le numéro correspondant.


Si pas de présence du texte "test" en colonne C et si pas de présence de date en colonne T pour le numéro correspondant = aucune action.


Si pas de présence du texte "test" en colonne C et si présence de date en colonne T pour le numéro correspondant = date (format dd/mm/yyyy) en colonne U pour le numéro correspondant.


je joint le fichier avec un logigramme qui sera plus parlant
 

Pièces jointes

  • DATE.xlsm
    32.2 KB · Affichages: 41

Discussions similaires

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