begin process at 2012 02 15 11:05:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

General

 > 

[VBA-Excel 2007] Cellule vide => copier coller.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[VBA-Excel 2007] Cellule vide => copier coller.

jeudi 5 mars 2009 à 14:24:12 | [VBA-Excel 2007] Cellule vide => copier coller.

Panodrek

Bonjour.

Voici mon problème: Je dois copier coller des colonnes d'une feuille vers une autre feuille créé a partir d'une macro. Jusque là pas de problème. Cependant, lorsque je copie mes colonne, il arrive que certaines ne contiennent aucune valeur, mais je dois quand même les copier cars elles montrent qu'aucun relevé n'a été effectué à la date affichée.

Voici mon code (çà fait brouillon je sais, mais bon, je ne fais pas beaucoup de programmation, j'en ai juste besoin pour m'éviter de faire un travail de bot là...):

Sheets("" & RetourAnn).Select
        Select Case RetourCU
            Case 1 And Sheets("" & RetourAnn).Range("B4").Value = "Discharge"
            Range("B" & cpt & ":B" & cpt1).Select
            Selection.Copy
       
            Case 2 And Sheets("" & RetourAnn).Range("C4").Value = "temperature"
            Range("C" & cpt & ":C" & cpt1).Select
            Selection.Copy
       
            Case 3 And Sheets("" & RetourAnn).Range("D4").Value = "pH"
            Range("D" & cpt & ":D" & cpt1).Select
            Selection.Copy
       
            Case 4 And Sheets("" & RetourAnn).Range("E4").Value = "conductivity"
            Range("E" & cpt & ":E" & cpt1).Select
            Selection.Copy
       
            Case 5 And Sheets("" & RetourAnn).Range("F4").Value = "NA+"
            Range("F" & cpt & ":F" & cpt1).Select
            Selection.Copy
       
            Case 6 And Sheets("" & RetourAnn).Range("G4").Value = "K+"
            Range("G" & cpt & ":G" & cpt1).Select
            Selection.Copy
       
            Case 7 And Sheets("" & RetourAnn).Range("H4").Value = "Mg2+"
            Range("H" & cpt & ":H" & cpt1).Select
            Selection.Copy
       
            Case 8 And Sheets("" & RetourAnn).Range("I4").Value = "Ca2+"
            Range("I" & cpt & ":I" & cpt1).Select
            Selection.Copy
       
            Case 9 And Sheets("" & RetourAnn).Range("J4").Value = "Cl-"
            Range("J" & cpt & ":J" & cpt1).Select
            Selection.Copy
       
            Case 10 And Sheets("" & RetourAnn).Range("K4").Value = "NO3-"
            Range("K" & cpt & ":K" & cpt1).Select
            Selection.Copy
       
            Case 11 And Sheets("" & RetourAnn).Range("L4").Value = "SO42-"
            Range("L" & cpt & ":L" & cpt1).Select
            Selection.Copy
       
            Case 12 And Sheets("" & RetourAnn).Range("M4").Value = "alcalinity"
            Range("M" & cpt & ":M" & cpt1).Select
            Selection.Copy
       
            Case 13 And Sheets("" & RetourAnn).Range("N4").Value = "HCO3-"
            Range("N" & cpt & ":N" & cpt1).Select
            Selection.Copy
       
            Case 14 And Sheets("" & RetourAnn).Range("O4").Value = "Si"
            Range("O" & cpt & ":O" & cpt1).Select
            Selection.Copy
       
            Case 15 And Sheets("" & RetourAnn).Range("P4").Value = "DOC"
            Range("P" & cpt & ":P" & cpt1).Select
            Selection.Copy
       
            Case 16 And Sheets("" & RetourAnn).Range("Q4").Value = "SPM"
            Range("Q" & cpt & ":Q" & cpt1).Select
            Selection.Copy
       
            Case 17 And Sheets("" & RetourAnn).Range("C4").Value = "RFm"
            Range("C" & cpt & ":C" & cpt1).Select
            Selection.Copy
       
            Case 18 And Sheets("" & RetourAnn).Range("D4").Value = "Tmin"
            Range("D" & cpt & ":D" & cpt1).Select
            Selection.Copy
       
            Case 19 And Sheets("" & RetourAnn).Range("E4").Value = "Tmax(°C)"
            Range("E" & cpt & ":E" & cpt1).Select
            Selection.Copy
           
            Case 20 And Sheets("" & RetourAnn).Range("F4").Value = "Tmean"
            Range("F" & cpt & ":F" & cpt1).Select
            Selection.Copy
       
            Case 21 And Sheets("" & RetourAnn).Range("G4").Value = "Hummean"
            Range("G" & cpt & ":G" & cpt1).Select
            Selection.Copy
       
            Case 22 And Sheets("" & RetourAnn).Range("H4").Value = "GRinstant"
            Range("H" & cpt & ":H" & cpt1).Select
            Selection.Copy
       
            Case 23 And Sheets("" & RetourAnn).Range("I4").Value = "Grcumul"
            Range("I" & cpt & ":I" & cpt1).Select
            Selection.Copy
       
            Case 24 And Sheets("" & RetourAnn).Range("J4").Value = "Vwind"
            Range("J" & cpt & ":J" & cpt1).Select
            Selection.Copy
       
            Case 25 And Sheets("" & RetourAnn).Range("K4").Value = "Dirwind"
            Range("K" & cpt & ":K" & cpt1).Select
            Selection.Copy
       
            Case 26 And Sheets("" & RetourAnn).Range("L4").Value = "RFday"
            Range("L" & cpt & ":L" & cpt1).Select
            Selection.Copy
       
            Case 27 And Sheets("" & RetourAnn).Range("M4").Value = "PETday"
            Range("M" & cpt & ":M" & cpt1).Select
            Selection.Copy
       
        End Select
       
        Sheets("site" & RetourCS & "ann" & RetourAnn).Select
        Range("E" & c).Select
        ActiveSheet.Paste


Le message d'erreur qui s'affiche est le suivant:

Erreur d'exécution '1004':
La méthode Paste de la classe Worksheet a échoué.

Merci d'avance pour m'éclairer sur mon problème
jeudi 5 mars 2009 à 14:42:24 | Re : [VBA-Excel 2007] Cellule vide => copier coller.

Panodrek

En y réfléchissant de plus près, peut être que le problème vient de la boucle "For" dans laquelle il est implémenté, donc je vais mettre tout le code (en plus allégé, vous avez compris le système du case...):

For i = v To RetourB
   

       
    '
    'Copie des dates
    '
   
        Sheets("" & RetourAnn).Select
        Range("A" & cpt & ":A" & cpt1).Select
        Selection.Copy
   
    '
    'Remplissage de la feuille créée
    '
   

        Sheets("site" & RetourCS & "ann" & RetourAnn).Select
        Range("A" & c).Select
        ActiveSheet.Paste
           
        Range("B" & c).Select
        Application.CutCopyMode = False
        ActiveCell.FormulaR1C1 = RetourCP
        Range("C" & c).Select
        ActiveCell.FormulaR1C1 = RetourCS
        Range("D" & c).Select
        ActiveCell.FormulaR1C1 = RetourCU
        Range("B" & c & ":D" & c).Select
        Selection.AutoFill Destination:=Range("B" & c & ":D" & c + x), Type:=xlFillDefault
   

    '
    'Vidage de presse-papier anti erreur 1004 qui donne des envies de meurtre
    '
   
        Application.CutCopyMode = False
   
    '
    'Copie de la colonne à copier en fonction du Code Unité (RetourCU)
    '
   
   
        Sheets("" & RetourAnn).Select
        Select Case RetourCU
            Case 1 And Sheets("" & RetourAnn).Range("B4").Value = "Discharge"
            Range("B" & cpt & ":B" & cpt1).Select
            Selection.Copy
       
            ...
           
            Case 27 And Sheets("" & RetourAnn).Range("M4").Value = "PETday"
            Range("M" & cpt & ":M" & cpt1).Select
            Selection.Copy
       
        End Select
       
        Sheets("site" & RetourCS & "ann" & RetourAnn).Select
        Range("E" & c).Select
        ActiveSheet.Paste
   
        c = c + x + 1
        RetourCU = RetourCU + 1
        cpt5 = cpt5 + c
       
   
    Next


Voila. Merci d'avance.
jeudi 5 mars 2009 à 17:41:49 | Re : [VBA-Excel 2007] Cellule vide => copier coller.

Panodrek

Réponse acceptée !
Bon et ben je vous ai dérangé et emmêlé pour rien, j'ai trouvé ma solution et ai même améliorer le tout. Voila voila, merci quand même à ceux qui se sont aventuré à lire ce sujet !!
mardi 24 août 2010 à 15:44:19 | Re : [VBA-Excel 2007] Cellule vide => copier coller.

Kirkus

j'ai le même problème que toi erreur 1004 après avoir copié plusieurs sheets et la commande Application.CutCopyMode = False n'y change rien


Cette discussion est classée dans : case, select, range, sheets, retourann


Répondre à ce message

Sujets en rapport avec ce message

fusion sur excel [ par vynill ] hello J'ai une macro sur excel en vba qui me permet a partir de 2 classeurs (1 prevision et 1 realisation) d'obtenir un autre document pour pouvoir l Problème de calendrier et de nettoyage de cellules [ par THiOoOuZZ ] Salut a tous cela fait maintenant 1 semaine que je m interesse de très près a vb au cours de mon stage puisque je dois planifier la maintenance d une probléme de copie de données entre tableau sous VBA excel [ par sobeit1 ] Salut, j'ai créé un programme sur VBA excel qui, en fonction d'un tableau feuil 3, réécrit des infos dans un second tableau feuil 2.Certains données y [Débutant] Boite Dialogue (Userform) VB et Excel [ par vsan ] Bonjour à tous! Voila, j'essaie de développer (c un bien grand mot...) une sorte de boite de dialogue qui me permettrait de lancer une macro!Ce que je HELP [ par hot_sauce93 ] Voila mon ti truc (truc tout bete je sais lol) :    Sheets("Feuil1").Select    Range("B2").Select    Selection.Copy    Sheets("Feuil2").Select    Ra select case [ par tortuegenie ] Bonjour, je souhaite utilisé un select case qui suivant le mot ecrit dans la colonne C d'excel me permet d'effectuer différents codes.Le problème est graphique + ajout courbe [ par yod6666 ] Bonjour à tous,Je recherche le moyen d'inserer par l'intermédiaire d'une boucle, des courbes avec valeurs,noms et onglet variables.Ma partie AddNewSer filtre elaborée [ par bipbip2000 ] Bonjour,j'ai des souci avec ces filtres, j'ai reussi a le faire marcher;mais j'air reesayer avec normalement les meme conditions et sa marche pas....v Probleme de valtest dans Excel [ par spike13127 ] Voila j'ai encore un souci avec Excel, je voudrais faire ceci :Sub GenererCdeNonTraite() Dim JDim ligne J = 3ligne = 10 Range("B10:F60").SelectA facture et archive [ par cachcach64 ] bjr tout le monde,voila g un pti souci!!jdoi fer une facture sur une feuille de calcul et archiver lé code... ds une otre feuille de calcul!mon code é


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales