0
votes

VBA Trouver et compenser

J'essaie de trouver une cellule que je sais que c'est là, mais me dit toujours qu'il n'y a pas. Rng = rien xxx


3 commentaires

Si la plage en question est formatée comme une date, à la recherche de la chaîne "31/1/2019" ne fonctionnera pas (manuellement ou en VBA)


Est-ce que cette date change du tout? Est-ce que cette date dans une cellule et seulement dans cette cellule?


Vous devriez voir: Excel VBA gamme.Find date de formule


3 Réponses :


1
votes

considérer: xxx

(vous pouvez avoir d'autres erreurs)


0 commentaires

1
votes

Le code est à la recherche d'une chaîne "31/1/2019" et cette chaîne n'est pas présentée comme une date dans Excel. Pour le présenter comme une date, changez le nom du mois et de la journée, comme celui-ci: "1/31/2019" : xxx

bien sûr sont de meilleurs moyens de le faire, par exemple écrire quoi: = datestérien (2019, 1, 31) et ne pas attentifier à quoi vient d'abord et ce qui vient de la deuxième (comme dans la solution de Gary.) < P> Pour la manière du format EXCEL et VBA Date et recherchez-la, regardez ici:


0 commentaires

0
votes

Quelque chose à noter pour l'avenir, lorsque vous essayez d'utiliser une date en tant que critère, vous devez mettre la date dans # s et non "s. Votre VBA modifiera automatiquement la date pour correspondre au format que votre système est configuré pour être utilisé.

Par exemple, si je saisis les éléments suivants: P>

If ActiveCell.Value = #1/31/2018# Then
    a = 1
ElseIf ActiveCell.Value = "31/1/2018" Then
    a = 1
End If


0 commentaires