Microsoft 365 Copier sous condition format cellule autre feuille dans cellule feuille active

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,
Je vous souhaite un bon WE :)

Bon sang de bon sang !
Je bute sur un code que j'ai du faire dans le passé et que je ne retrouve plus Grrr !
J'ai besoin de copier sous condition la valeur d'une autre feuille "inactive" dans une cellule de ma feuille "active".
J'ai tenté un tas de codes et fait des recherches sur internet sans trouver le bon code.
J'en suis à :
VB:
 If Sheets("Table").Range(ActiveCell.Offset(0, 1)) = "Rappels" Then
    ActiveCell.Offset(0, 1).Interior.Color = RGB(255, 255, 204)
        With ActiveCell.Font
        .ColorIndex = xlAutomatic
        .Bold = True
    End With
End If
Et ça ne fonctionne pas :mad:
Auriez-vous le bon code ?
Je vous remercie comme d'habitude lol,
Amicalement,
lionel,
 
Solution
Oui j'avais mal lu alors utilise ce fichier (2) :
VB:
Sub format()
Dim F As Object
Set F = ActiveSheet
Application.ScreenUpdating = False
Sheets("Table").Activate 'active la feuille
If ActiveCell.Offset(, 1).Text = "Rappels" Then
    F.Activate 'retour à la feuille du bouton
    With ActiveCell.Offset(, 1)
        .Interior.Color = RGB(255, 255, 204)
        With .Font
            .ColorIndex = xlAutomatic
            .Bold = True
        End With
    End With
End If
End Sub

Marcel32

XLDnaute Accro
Bonjour,

Juste une question en passant : on a le droit d'utiliser "ActiveCell" pour référencer une cellule d'une autre feuille que la feuille active ???
Ça donne quoi ActiveCell.Adress d'une feuille non active ?


En ce week-end ensoleillé, explose-toi bien ma petite usine à gaz ! 😁
 

Marcel32

XLDnaute Accro
J'ai aussi tenté "ActiveCell.Adress d'une feuille non active" ... ça ne fonctionne pas non plus :mad:
Ou je n'ai pas su le coder comme il faut.
C'était une vraie question de ma part : que renvoie comme résultat ActiveCell.Adress pour une feuille non active ?

ActiveCell fait, me semble-t-il, référence à la cellule active (d'où son nom ;)), de la feuille active.
Donc quand on utilise ActiveCell en faisant référence à une autre feuille que la feuille active, ça référence quelle cellule en réalité ???
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re-Bonjour,

le code :
VB:
Sub format()
'If Sheets("Table").Range(ActiveCell.Offset(0, 1)) = "Rappels" Then
    If Sheets("Table").Address.Offset(0, 1) = "Rappels" Then
    ActiveCell.Offset(0, 1).Interior.Color = RGB(255, 255, 204)
        With ActiveCell.Font
        .ColorIndex = xlAutomatic
        .Bold = True
    End With
    End If
'End If
End Sub
Renvoie une erreur :
Sans titre.png

lionel :)
 

job75

XLDnaute Barbatruc
Pour trouver la cellule active de la feuille "Table" il faut activer cette feuille :
VB:
Sub format()
Dim F As Object
Set F = ActiveSheet
Application.ScreenUpdating = False
Sheets("Table").Activate 'active la feuille
With ActiveCell.Offset(, 1)
    If .Text = "Rappels" Then
        .Interior.Color = RGB(255, 255, 204)
        With .Font
            .ColorIndex = xlAutomatic
            .Bold = True
        End With
    End If
End With
F.Activate 'retour à la feuille du bouton
End Sub
 

Pièces jointes

  • test(1).xlsm
    19.2 KB · Affichages: 1

job75

XLDnaute Barbatruc
Oui j'avais mal lu alors utilise ce fichier (2) :
VB:
Sub format()
Dim F As Object
Set F = ActiveSheet
Application.ScreenUpdating = False
Sheets("Table").Activate 'active la feuille
If ActiveCell.Offset(, 1).Text = "Rappels" Then
    F.Activate 'retour à la feuille du bouton
    With ActiveCell.Offset(, 1)
        .Interior.Color = RGB(255, 255, 204)
        With .Font
            .ColorIndex = xlAutomatic
            .Bold = True
        End With
    End With
End If
End Sub
 

Pièces jointes

  • test(2).xlsm
    19.3 KB · Affichages: 2

Discussions similaires

Haut Bas