> Tous les forums > Forum Bureautique
 VBA code agit pas dans le bonne feuilleSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
jmsch
  Posté le 27/11/2016 @ 19:02 
Aller en bas de la page 
Petit astucien

Bonjour

voilà voici un petit fichier test avec un bout de code que je n'arrive pas à faire fonctionner.
Voici le fichier test http://www.cjoint.com/c/FKBsbR6ieTk

Normalement je choisi dans l'onglet Anomalie une valeur dans la combobox
Ce choix déclenche une macro qui copie des données depuis plusieurs onglet vers Anomalies sources.
Une fois la copie faite un petit bout de code devrait enlever les cases vide ligne par ligne.


C'est la que ça coince. les copie des données se font bien mais le code qui devrait effacer les cellules vide agit sur la mauvaise feuille. Il agit dans l'onglet Anomalie au lieu de Anomalies sources
Je ne vois pas pourquoi?

Merci de m'éguiller

Publicité
ferrand
 Posté le 27/11/2016 à 23:11 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Ton code ne serait pas si mal, si les variables étaient déclarées et typées, si on évitait de sélectionner ou activer, s'il y avaient moins de répétitions, sans ce Application.CutCopyMode... qui intervient comme un cheveu sur la soupe (quasiment toujours inutile, mais là doublement aucune copie n'ayant eu lieu !), et enfin si toutes les expressions étaient qualifiées.

Ce dernier point est l'indice pour t'aiguiller ! Quand tu vois des Range ou Cells tout nus (par nus j'entends sans référer explicitement à une feuille (celle dans laquelle on les trouve), c'est VBA qui décide de la feuille... et il ne peut toujours décider juste !!

Cordialement.

jmsch
 Posté le 28/11/2016 à 21:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci Ferrand tour ton aide.... le problème est résolu
Je pensais que le fait d'activer la feuille au début de mon code suffisait et que je n'avais plus besoin de ce fait de la rajouter devant les Range et Cells.
Je vais modifier ça sur le reste de mon code.

jmsch
 Posté le 29/11/2016 à 22:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir

je suis toujours avec mon fichier et je crois que j'ai encore besoin d'un petit coup de main de ta part, si tu veux bien. Lol
Tout semble fonctionner sauf ce bout de code qui doit enlever les lignes vide du tableau et qui ne fait pas ce que je veux.
Je viens de passer la soirée dessus et je ne vois pas ou j'ai mon erreure

De la colonne j à AZ le code fonctionne. Case que j'ai mise en jaune
De BA à BQ le code ne fonctionne pas et me fait n'importe quoi. Case en Rouge

La macro se lance avec la ComboBox dans l'onglet Anomalies et remonte les lignes du tableau dans l'onglet Anomalies Sources

Voici le fichier : http://www.cjoint.com/c/FKDvPKm4iIn

Merci

ferrand
 Posté le 30/11/2016 à 07:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Private Sub Combobox1_Change()
Dim k%, i%
With Worksheets("Anomalies sources")
For k = 10 To 69
For i = .Cells(.Rows.Count, k).End(xlUp).Row To 1 Step -1
If IsEmpty(.Cells(i, k)) Then .Cells(i, k).Delete xlShiftUp
Next i
Next k
End With
End Sub

Cordialement.

jmsch
 Posté le 30/11/2016 à 17:48 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Un grand merci à toi.... ton code me dépanne bien.
En effet, c'est bien plus simple avec directement dans le code K de 10 à 69

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Sujets relatifs
erreur dans mon code Vba
Effectuer une copie dans Excel des données d'une feuille vers une autre
Instructions dans feuille de calcul open office
Impression onglet dans feuille de cacul
Aller chercher une valeur dans une cellule d'une autre feuille
colorer en jaune cell actve dans feuille verrouillee
regrouper feuilles dans une feuille
2 pages par feuille dans macro excel
Excel 2007 Copier/Coller d’une feuille à l’autre Dans un même classeur.
Garder la forme d'un texte répété dans une autre feuille
Plus de sujets relatifs à VBA code agit pas dans le bonne feuille
 > Tous les forums > Forum Bureautique