Importation de certaines colonnes

Bonjour à tous,

je reviens vers vous pour solliciter votre aide concernant ma problématique que je vous expliquerai ci-après :

j'ai deux classeurs inventaires & Gestion de stock

je cherche un créer un code et le lier au bouton de l'onglet BD ARTICLES qui fait les rôles suivants :

***mporter les données des colonnes B, C, D, E à partir de la ligne 24 de l'onglet INV du fichier Inventaires et les mettre dans les colonnes B, C, D, E à partir de la ligne 7 de l'onglet BD ARTICLES du fichier Gestion de stock

***importer les données des colonnes B, F, H à partir de la ligne 24 de l'onglet INV du fichier Inventaires et les mettre dans les colonnes B, D, E à partir de la ligne 7 de l'onglet ETAT DES STOCKS du fichier Gestion de stock

***dans la colonne A de l'onglet BD ARTICLES du fichier Gestion de stock j'aimerai avoir les deux premières lettre de la colonne B + les deux premières lettres de la colonne C et un tiret et le numéro de claseement qui sera comme ça en 0001. si on prend l'exemple de la cellule A7 on aura COCL-0001 c'est à dire deux lettres de B7 + deux lettres de C7 plus un tiret et le numéro de classement, une fois on a une nouvelle famille dans la colonne B le classement commence dès le début.

***copier les données de la colonne A de l'onglet BD ARTICLES et les coller dans la colonne A de l'onglet ETAT de stock à partir de la ligne 7

NB: pour la colonne H du fichier Inventaire il faut importer la valeur et non pas la formule

je vous remercie par avance

42inventaires.xlsx (111.48 Ko)

Bonjour

***mporter les données des colonnes B, C, D, E à partir de la ligne 24 de l'onglet INV du fichier Inventaires et les mettre dans les colonnes B, C, D, E à partir de la ligne 7 de l'onglet BD ARTICLES du fichier Gestion de stock

Doit-on effacer quelque chose dans la feuille BD ARTICLES avant d'importer depuis INVENTAIRE ?

Les deux fichiers sont toujours dans le même répertoire ?

Cordialement

Bonsoir Monsieur Dan, le forum

Oui il faut tout effacer de BD ARTICLES à partir de la ligne 7 et les remettre à zéro avant d'importer les nouvelles données mais il faut garder la mise en forme

Les deux sont aussi toujours dans le même dossier

Merci

Bonjour

Votre fichier en retour pour test.

Cliquez sur le bouton sur la feuille BD ARTICLES pour Importer les données et attribuer le numero article.

Le code efface à chaque fois toutes les données des deux feuilles BD article et Etat des stocks.

Le fichier Inventaire doit se trouver dans le même répertoire que le fichier Gestion stock

Attention toutefois que le nom de la feuille Etat des stocks comportait un espace après le S et que j'ai corrigé dans le fichier ci-joint

Si ok et terminé, lors de votre réponse merci de cloturer le fil en cliquant sur petit v en haut à droite

Cordialement

Bonjour Dan, le forum

merci pour votre réponse

j'ai bien fait ce que vous m'avez demandé mais le code renvoie une erreur sur cette ligne :

ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial Paste:=xlPasteValues

Re

Avez-vous testé sur le fichier que je vous donné ?

Modifiez la macro Import par celle ci-dessous:

Sub Import()
'Dan - 06/03/18 - Importation des donnees depuis fichier Inventaire
Dim chemin As String, fichier As String
Dim dlg As Integer
Call Reset
chemin = ThisWorkbook.Path & "\"
fichier = "Inventaires" & ".xlsx"
Workbooks.Open chemin & fichier
With Workbooks(fichier).Sheets("INV")
    dlg = .Cells.Find("*", LookIn:=xlValues, SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
    .Range("B24:E" & dlg).Copy ThisWorkbook.Sheets("BD ARTICLES").Range("B7")
    .Range("B24:B" & dlg).Copy ThisWorkbook.Sheets("ETAT DES STOCKS").Range("B7")
    .Range("F24:F" & dlg).Copy ThisWorkbook.Sheets("ETAT DES STOCKS").Range("D7")
    .Range("H24:H" & dlg).Copy
    ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial Paste:=xlPasteValues
End With
Application.DisplayAlerts = False
Workbooks(fichier).Close savechanges:=False
Call compteur
End Sub

Cordialement

Bonjour Monsieur Dan,

j'ai changé la macro par celle que vous m'avez donné mais j'ai toujours le même message bloquant

Voir l'image ci-jointe

Amicalement

An@s

sans titre

Re

Vous ne répondez pas à mon message précédent --> Avez-vous testé sur le fichier que je vous donné ?

Bonjour Monsieur Dan,

effectivement je l'avais testé sur le fichier que vous m'avez envoyé mais ca ne fonctionne pas

re

Essayez en remplaçant la ligne qui fait défaut par celle ci-dessous :

ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False

Re,

même la modification avec la nouvelle ligne beug toujours

Re

Et comme ceci ->

ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial xlPasteValues

ou

ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial Paste:=xlPasteValuesAndNumberFormats

Merci d'essayer sur le fichier que j'ai posté

Bonsoir Mr Dan,

il beug toujours dans la même ligne,

je confirme que je travaille toujours avec le fichier que vous avez posté

re

C'est une bête question mais votre fichier INVENTAIRES est toujours bien ouvert ?

Le fichier inventaires ne s'ouvre que lorsque j'exécute le code

Et après le message d'erreur il reste ouvert

re

Pouvez-vous enregistrer une macro via l'enregistreur automatique d'Excel ?

  • Aller dans l'outil développeur, puis cliquez sur "enregistrer une macro"
  • faite un copier d'une cellule puis "collage spécial" --> option "Valeurs"
  • Arreter l'enregistreur de macro

Mettez moi le code dans votre réponse que je vois comment excel 2013 fonctionne sur ce point

Bonjour Mr Dan,

voici le code :

Sub Macro1()
'
' Macro1 Macro
'

'
    Range("K14").Select
    Selection.Copy
    Range("N14").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub

Re

Remplacer la igne par celle-ci -->

ThisWorkbook.Sheets("ETAT DES STOCKS").Range("E7").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks :=False, Transpose:=False

Veillez à ce que tout le code soit sur une seule ligne et refaite un test

Re,

le code beug toujours dans la même ligne maheureusement

Re

Cela n'a pas de sens.

Pouvez-vous me redonner le fichier sur lequel vous avez le beug

Rechercher des sujets similaires à "importation certaines colonnes"