> Tous les forums > Forum Bureautique
 se positionner avec une macro dans une cellule préciseSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
jmsch
  Posté le 19/08/2014 @ 23:32 
Aller en bas de la page 
Petit astucien

Bonjour,

j'ai besoin de me positionner dans la 1er ligne vide d'un tableau.
Pour ce faire j'utilise le bout de code ci dessous. Il fonctionne.

Range("A" & Cells(2000, 5).End(xlUp).Row + 1).Select

Maintenant dans un autre tableau les valeurs ont été trié en fonction de la couleur de la cellule. Les cellules de couleur en haut , les autres dessous.
Je voudrais me positionner dans la 1er ligne sous les cellules de couleur.

Merci

Publicité
ferrand
 Posté le 20/08/2014 à 00:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Je crains que la détection ne puisse se régler de la même façon, dans la mesure où la couleur n'est pas un critère utilisable avec la méthode SpecialCells, à laquelle on aurait pu penser, et qu'il faille en passer par une boucle pour trouver la première cellule non colorée.

n étant la dernière ligne de ta plage, renvoyée par ton code : n = Cells(2000, 5).End(xlUp).Row + 1)

on aurait quelque chose dans ce genre (si ta plage commence ligne 2 et si tu dois toujours tester sur la colonne E) :

For i = 2 to n
If Cells(i, 5).Interior.ColorIndex = xlColorIndexNone Then
Range("A" & i).Select
Exit For
End If
Next i

jmsch
 Posté le 21/08/2014 à 14:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour et merci

j'ai testé ton code.
Il fonctionne si les cellules ont une couleur. Dans mon cas la couleur provient d'une mise en forme conditionnel, donc ca ne fonctionne pas.
Y a peut être plus simple. Il faudrait tester les colonnes C et D et s'arrêter à la 1er cellules non vide rencontrée. C'est colonnes contiennent des nombres que je saisie manuellement.
En quelque sorte faire une synthèse des 2 lignes ci dessous. Je sais faire avec une colonne mais pas avec 2.
Si ou colonne C est non vide, ou colonne D est non vide je positionne le curseur juste dessous en A

Range("A" & Cells(2000, 3).End(xlUp).Row + 1).SelectRange("A" & Cells(2000, 4).End(xlUp).Row + 1).Select

ferrand
 Posté le 21/08/2014 à 14:29 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Pour C et D :

Dim n(1) as Integer, i%

For i = 0 to 1
n(i) = Cells(2000, i + 3).End(xlUp).Row + 1
Next i
Range("A" & Iif(n(0) < n(1), n(0), n(1)).Select

Pour formats conditionnel, je regarderai, pas le temps maintenant.

jmsch
 Posté le 21/08/2014 à 21:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Il manque un jeux de parenthèse après le Iif autour du 1er élément de l'expression.
Range("A" & IIf((n(0) < n(1)), n(0), n(1))).Select

Pour le test, ça se positionne correctement uniquement si C et D contiennent tous les 2 des valeurs ce qui n'est pas mon cas.

Dans mon tableau il y a 4 possibilités, soit :
- C contient une valeur
- D contient une valeur
- C et D contiennent une valeur
- C et D sont vides
Moi je voudrais me positionner en A dans la 1er ligne vide, ligne ou C et D sont vide.

Encore Merci

ferrand
 Posté le 21/08/2014 à 23:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

En effet manquait une parenthèse (je tape directement dans le post et pas de compilateur qui me prévient de l'absence d'une élément de syntaxe...)

Si j'ai bien compris, pour avoir C et D à la fois, tu inverses la condition dans la fonction Iif => IIf(n(0) > n(1), n(0), n(1)).

ferrand
 Posté le 22/08/2014 à 01:34 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Et pour revenir sur les formats conditionnels, ça ne peut pas marcher, car les cellules qui répondent à la condition et celles qui n'y répondent pas ont le même format conditionnel. On ne peut donc tester sur ce format et ses propriétés. Il faut alors tester sur la même condition que celle qui aboutit à colorer lorsqu'elle est vraie.

jmsch
 Posté le 22/08/2014 à 22:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci pour ton aide.
Le positionnement avec les colonnes C et D que tu m'as donné me convient très bien même si je ne comprend pas tout son fonctionnement.

Si j'ai pu te froisser un peu avec l'histoire des parenthèses oublié, ce n'était pas mon intention.
J'ai juste corrigé afin que le post soit juste et aussi si un éventuel futur utilisateur veut l'utiliser.

Bonne soirée



Modifié par jmsch le 22/08/2014 22:24
ferrand
 Posté le 22/08/2014 à 23:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

jmsch a écrit :

Merci pour ton aide.
Le positionnement avec les colonnes C et D que tu m'as donné me convient très bien même si je ne comprend pas tout son fonctionnement.

Si j'ai pu te froisser un peu avec l'histoire des parenthèses oublié, ce n'était pas mon intention.
J'ai juste corrigé afin que le post soit juste et aussi si un éventuel futur utilisateur veut l'utiliser.

Bonne soirée

Pas de souci ! Si je me "froisse", 1) faut une raison... 2) je l'exprime directement ! Au cas particulier, j'ai simplement remarqué que pour ce type d'omission, si j'avais tapé dans un module, j'aurais eu une signalisation d'erreur en allant à la ligne... C'est d'ailleurs une des raisons pour lesquelles il est plus productif de disposer d'un modèle pour faire des propositions, cela évite des erreurs et permet de tester, cela permet aussi de faire des propositions plus ajustées à l'environnement du problème soulevé.

S'il y a des points sur lesquels tu t'interroge, il ne faut pas hésiter à demander...

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
48,99 €Kaspersky Total Security 2021 (5 postes, 2 ans) à 48,99 €
Valable jusqu'au 04 Mars

Amazon fait actuellement une promotion sur la version 2021 de la célèbre suite de sécurité Kaspersky. Le marchand propose ainsi Kaspersky Total Security 2021 à 48,99 € seulement au lieu de 89 €. Cette version peut être installée sur 5 appareils (PC, Mac ou Android) et bénéficie de 2 ans de mises à jour. Une fois votre commande passée, la clé d'activation vous est immédiatement envoyée par email, accompagnée du lien de téléchargement. Notez que si vous avez déjà un abonnement Kaspersky Total Security, vous pourrez utiliser la clé pour prolonger votre abonnement de 2 ans.


> Voir l'offre
27,19 €Caméra de surveillance YI Dome Guard WiFi 360° à 27,19 €
Valable jusqu'au 03 Mars

Amazon fait une promotion sur la caméra de surveillance YI Dome Guard qui passe à 27,19 € au lieu d'une quarantaine d'euros ailleurs. Cette caméra se connecte à votre réseau en WiFi (l'ethernet est également possible) et peut ensuite être contrôlée à distance. Elle offre une définition FullHD 1080p, la vision nocturne et la détection et le suivi de mouvements (elle pivote à 360°) et de son (recevez une notification si quelque chose est détecté). Le microphone et le haut-parleur intégrés vous permettent de recevoir et de transmettre un son fort et clair, afin que vous puissiez parler à vos proches ou effrayer les intrus. Le stockage se fait en local sur une carte MicroSD ou sur le cloud.


> Voir l'offre
125,46 €SSD WD Black SN750 1 To (NMVe M.2, 3470 Mo/s) à 125,46 € livré
Valable jusqu'au 03 Mars

Amazon Allemagne fait une promotion sur le SSD WD Black SN750 1 To (NMVe M.2) qui passe à 120,91 €. Comptez 4,55 € pour la livraison en France soit un total de 125,46 € livré alors qu'on le trouve ailleurs à partir de 170 €. Ce SSD utilise une interface M.2 NVMe PCIe Gen3 x 4 pour une connexion simple et des performances exceptionnelles : jusqu’à 3 470 Mo/s en lecture séquentielle et jusqu’à 3 000 Mo/s en écriture séquentielle. Le SSD est doté de la technologie 3D TLC NAND haute densité offrant une endurance d’écriture durable et assorti d’une garantie de cinq ans.

Vous pouvez utiliser votre compte Amazon FR sur Amazon DE et il n'y a pas de douane.


> Voir l'offre

Sujets relatifs
Execution macro lors d'une saisie dans une cellule
Ouvrir avec macro un fichier dans autre classeur
Copier Coller dans Nouv Classeur avec Nom Cellule
afficher un calendrier dans une macro de cellule
Macro - déctecter un caractère dans une cellule
Suppress ligne avec cellule nommée en macro
cellule avec formule dans excel
Macro vers une cellule précise à un endroit précis
2 pages par feuille dans macro excel
Recopie cellule par macro
Plus de sujets relatifs à se positionner avec une macro dans une cellule précise
 > Tous les forums > Forum Bureautique