Petit pb simple de macro excel

Petit pb simple de macro excel - VB/VBA/VBS - Programmation

Marsh Posté le 16-06-2004 à 12:15:34    

Bonjour a tous,
 
Je me lance un peu dans la macro excel mais la je bloque sur une betise je pense :  
 

Code :
  1. Sub AgencyRemove()
  2.   Worksheets("Final" ).Activate
  3.   Range("C2:C4677" ).Selection
  4.   For Each cell In Selection
  5.     If cell.Value = "UNKNOWN" Then ClearContents
  6.   Next cell
  7. End Sub


 
Voila, ma toute toute petite macro, mais ca part en vrille des la premiere ligne avec une erreur : "Sub or function net defined"
 
Mais bon  mon seub a l'air detre definit pourtant...  :pfff:  
 
Si qulqu'un voit ce que c'est, je suis preneur...
 
++ et merci davance


Message édité par marcmaumont le 16-06-2004 à 13:13:18
Reply

Marsh Posté le 16-06-2004 à 12:15:34   

Reply

Marsh Posté le 16-06-2004 à 12:37:47    

essai,
 
cell.ClearContents
 
;)

Reply

Marsh Posté le 16-06-2004 à 12:41:07    

Maintenant ca fait autre chose... bah voyons...
 
'Object doesn't support this property or method'
 
!!!!
 
:-(

Reply

Marsh Posté le 16-06-2004 à 13:22:38    

Help... Personne n'a d'idée?
 
Svp...

Reply

Marsh Posté le 16-06-2004 à 13:34:21    

Code :
  1. Dim objCell As Range
  2.     Worksheets("Feuil1" ).Activate
  3.     Range("C2:C4677" ).Selection
  4.     For Each objCell In Selection
  5.        If objCell.Value = "UNKNOWN" Then objCell.ClearContents
  6.     Next cell

Une bonne habitude: Declare tes variables !!! :o  
(Je crois que cell est un mot réservé). La méthode ClearContents s'applique à l'objet Range.


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?
Reply

Marsh Posté le 16-06-2004 à 13:55:45    

Code :
  1. Sub AgencyRemove()
  2. Dim objCell As Range
  3.       Worksheets("Sheet2" ).Activate
  4.       Range("C2:C4677" ).Selection
  5.       For Each objCell In Selection
  6.          If objCell.Value = "UNKNOWN" Then objCell.ClearContents
  7.       Next objCell
  8. End Sub


 
voila, qd je mets ca, ca me fait "out of range"!!!
Je comprends pas pourtant c simple mon truc...
 
Tu prends les cellules de C2 a C4677 et si le contenu est "UNKNOWN", tu supprimes le contenu...

Reply

Marsh Posté le 16-06-2004 à 14:05:02    

Code :
  1. Dim objCell As Range
  2.     With Worksheets("Feuil1" )
  3.         .Activate
  4.         .Range("C2:C4677" ).Select
  5.     End With
  6.     For Each objCell In Selection
  7.        If objCell.Value = "UNKNOWN" Then objCell.ClearContents
  8.     Next objCell


La méthode "Selection" devient "Select". Chez moi, ça marche.


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?
Reply

Marsh Posté le 16-06-2004 à 14:45:26    

chez moi aussi!!!
Je te remercie enormement!!!!!

Reply

Marsh Posté le 16-06-2004 à 15:51:42    

hehe... J'ai encore une autre question, si c'est pas trop demandé!
 
G 2 feuilles de calcul dont une ki sera un peu le "propre" de l'autre...
 
Sur le premier, je fais un RANGE sur 3 colonnes et je veux recuperer les infos ligne par ligne de la 1ere et de la 3e colonne...
Mais je ne sais pas comment dire en vba la premiere et la derniere colonne...
 
Je pensais partir sur un :
FOR EACH ROW ...
 
 
Merci d'avance

Reply

Marsh Posté le 16-06-2004 à 16:42:56    

up...

Reply

Marsh Posté le 16-06-2004 à 16:42:56   

Reply

Marsh Posté le 16-06-2004 à 16:58:15    

Pas besoin d faire une selection:
 
 
Boucle tant que (condition)
    i = i + 1
    WorkSheets("Feuille" ).Range("A" & i).Value '1ere colonne
    WorkSheets("Feuille" ).Range("C" & i).Value ' 3eme colonne
Fin Boucle


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?
Reply

Marsh Posté le 16-06-2004 à 18:35:30    

Une derniere p'tite kestion : G fait un petit script pour copier  une cellule d'une feuille a une autre, mais ca ne marche pas :  
Worksheets("vik_1086797835" ).Range("K & i" ).Copy
        ActiveSheet.Paste Destination:=Worksheets("Final" ).Range("K & i" )
 
voili!!!

Reply

Marsh Posté le 17-06-2004 à 07:50:31    

Range("K & i" ) ne marche pas. Il faut sortir & i des guillemets.
Range("K" & i)  


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed