IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Macro Excel Déplacer Cellule+Insertion


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Commercial
    Inscrit en
    Avril 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Commercial
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2014
    Messages : 23
    Par défaut Macro Excel Déplacer Cellule+Insertion
    Bonjour à tous,

    Je trouve toujours réponse a mes questions en consultant les sujets existants, sauf quand ca touche aux macros, ou la solution n'est pas toujours à portée de clic
    Fichier excel en exemple. J'ai trouvé une macro qui déplace des cellules, mais je n'en comprends pas son fonctionnement et du fait, je ne sais pas exactement de quelle façon me l'approprier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Sub TEST()
     
    '
     Range("A3917").Activate
        ActiveCell.CurrentRegion.Select
        'MsgBox ActiveCell.CurrentRegion.Rows.Count
        nombrel = ActiveCell.CurrentRegion.Rows.Count / 2
    Range("A3918").Select
        For i = 1 To nombrel
        Selection.EntireRow.Insert
        Selection.Offset(1, 0).Select
        Next i
     
    End Sub
     
     
     
    Sub Macro4()
    '
    ' Macro4 Macro
    '
     
    '
        Range("A8").Activate
        Range("A8:I8").Select
        Selection.Delete shift:=xlToLeft
    End Sub
     
    Sub Decalage()
    Dim Lg As Long
    Dim J As Long
      Application.ScreenUpdating = False
      For J = 30 To Range("J65536").End(xlUp).Row Step 2
        If Application.CountA(Range("A" & J).Resize(1, 9)) = 0 Then
          Range("A" & J).Resize(1, 9).Delete shift:=xlShiftToLeft
        End If
      Next J
     
    End Sub

    Je ne sais pas si tout est à reprendre ou s'il faut créer quelque chose de nouveau.

    L'idée, avec le bouton Macro, déplacer des cellules inscrites manuellement en colonne B et D(celles inscrites dans le cadre en tirets, ici créé pour l'exemple mais sera absent de mon fichier final).
    L'un des 3 codes plus bas (1, 2 ou 3) est aussi inséré manuellement dans le cadre jaune.

    J'aimerais donc les coller en insérant de nouvelles lignes dans l'onglet Source, idéalement dans les premieres lignes pour chaque code client.

    De plus, j'ai une macro sur un autre fichier qui enregistre une copie de la feuille actuelle, est il possible par la même occasion et donc le même bouton, enregistrer la feuille active sur un nouveau fichier ? (Juste avant d'avoir déplacé les cellules par exemple)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Sub saveAndQuit()
         On Error Resume Next
     
        Application.DisplayAlerts = False
     
         ActiveWorkbook.SaveAs Filename:="C:\Users\lereuland\Desktop\" _
           & Range("C9").Value & ".xlsm"
     
         'ThisWorkbook.Close
         Application.DisplayAlerts = True
    End Sub
     
    Sub Archiver()
    Dim extension As String
    Dim chemin As String, nomfichier As String
    Dim style As Integer
     
    Application.ScreenUpdating = False
     
    ThisWorkbook.ActiveSheet.Copy
    extension = ".xls"
    chemin = "C:\Users\lereuland\Desktop\"
    nomfichier = ActiveSheet.Range("C9") & " " & Format(Date, "dd-mm") & extension
     
    With ActiveWorkbook
        .ActiveSheet.DrawingObjects(1).Delete
        .SaveAs chemin & nomfichier, xlExcel8
        .ActiveSheet.UsedRange.Value = .ActiveSheet.UsedRange.Value
        .Close True
    End With
     
    Application.ScreenUpdating = True
     
    End Sub
    Lors de l'enregistrement j'ai quelques messages d'erreur de compatibilité, je vous posterai les screens si je les ai toujours avec ce nouveau fichier si vous voulez bien

    J'espère avoir bien expliqué ma demande, n'hésitez pas à me demander des précisions supplémentaires au besoin. Merci beaucoup à vous !
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [XL-2007] Macro Excel copier cellule en fonction de cellule indentique dans une colonne
    Par stephane12 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/03/2014, 06h51
  2. macro excel pour récupérer cellules
    Par touaine dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/05/2007, 21h05
  3. Réponses: 6
    Dernier message: 24/01/2007, 08h15
  4. macro excel : affectation d'une formule à une cellule
    Par titouneee dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 09/01/2007, 15h53
  5. Macro Excel: enreg d1 cellule en conservant le mise en forme
    Par repié dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 02/12/2005, 15h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo