Macro pour coller des données dans une base même classeur...

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Christian0258

XLDnaute Accro
Bonjour à tout le forum,

J'ai, une nouvelle fois, besoin de vos compétences en VBA. Je souhaiterais pouvoir replacer des données vers une autre feuille contenant la base de données (même classeur)...

voir fichier...

Je vous remercie pour le temps que vous voudrez bien m'accorder.

Bien à vous,
Christian
 

Pièces jointes

Re : Macro pour coller des données dans une base même classeur...

Bonjour Christian0258,

Voir le fichier joint avec cette macro :

Code:
Sub Report()
Dim code$, cel As Range, valeurs, lig, col
code = [G2]
Set cel = [F65536].End(xlUp)
valeurs = cel.Offset(, 1).Resize(, 3).Value 'tableau
With Sheets("Archives")
  lig = Application.Match(cel, .[F:F], 0)
  col = Application.Match(code, .[2:2], 0)
  If IsError(lig) Or IsError(col) Then MsgBox "Pas trouvé !", 48: Exit Sub
  .Cells(lig, col).Resize(, 3) = valeurs
  Application.Goto .Cells(lig, col).Offset(, 2) 'facultatif, sélection de la quantité
End With
End Sub
A+
 

Pièces jointes

Re : Macro pour coller des données dans une base même classeur...

Re,

Regardez bien la fin du code.

Le tableau valeurs constitué de 3 éléments est transféré sur 3 cellules...

Mais si vous voulez sélectionner ces 3 cellules, utiliser ce code :

Code:
Application.Goto .Cells(lig, col).Resize(, 3) 'facultatif, sélection des 3 cellules
Je pense que vous saurez où le placer 🙂

A+
 
Re : Macro pour coller des données dans une base même classeur...

Re, le forum

Ok, merci, job75.

J'ai besoin de faire évoluer mon appli, en effet dans le même esprit du travail de job75, j'aimerais ajouter des qtéq dans une colonne feuille Articles...

voir fichier...

Merci pour votre aide si précieuse.

Bien à vous,
Christian
 

Pièces jointes

Dernière édition:
Re : Macro pour coller des données dans une base même classeur...

Bonjour Christian,

Pour ce nouveau problème, voici la macro complétée :

Code:
Sub Report()
Dim code$, affaire As Range, Qte As Range, valeurs, lig1,  col, lig2
code = [G2]
Set affaire = [F5]
Set Qte = [I4]
If Not IsNumeric(CStr(Qte)) Then _
  MsgBox "Entrez une valeur numérique en I4...": Qte.Select: Exit Sub
valeurs = affaire.Offset(, 1).Resize(, 3).Value 'tableau
With Sheets("Archives")
  lig1 = Application.Match(affaire, .[F:F], 0)
  col = Application.Match(code, .[2:2], 0)
  If IsError(lig1) Or IsError(col) Then _
    MsgBox "Pas trouvé dans 'Archives' !", 48: Exit Sub
  lig2 = Application.Match(affaire.Offset(, 1), Sheets("Articles").[A:A], 0)
  If IsError(lig2) Then _
    MsgBox "Pas trouvé dans 'Articles' !", 48: Exit Sub
  .Cells(lig1, col).Resize(, 3) = valeurs
End With
With Sheets("Articles")
  .Cells(lig2, 4) = .Cells(lig2, 4) + Qte
End With
Qte = ""
End Sub
Fichier joint.

A+
 

Pièces jointes

Dernière édition:
Re : Macro pour coller des données dans une base même classeur...

Re, le forum, job75,

Tout d'abord, un grand merci job75, pour ton aide.

Dis-moi:
Le report de la Qté inscrite en I4 s'ajoute bien dans la feuille Articles, mais sauf erreur la Qté définitive en I5 n'est pas modifiée dans la feuille Archives ??

Peux-tu me dire.

à te lire, encore merci.
Christian
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
116
  • Question Question
Microsoft 365 MFC dans tableau
Réponses
2
Affichages
226
Retour