Copier des données à partir de sa valeur
bol
-
Vb -
Vb -
Bonjour,
j'ai deux classeur dans lequelle je dois copier des données d'un classeur à un autre.
En effet, j'ai par exemple
une ligne dans mon tableau s'appellant à pour titre BONBON dans la colonne B
exemple:
BONBON | 4% (col C)| 10% (col D)| données allant jusqu'a la colonne X par exemple
je dois copier les pourcentages de la ligne BONBON dans la ligne d'un autre classeur ligne 2 colonne B allant jusqu'a X
ma question serait comment faire pour copier ces données d'un classeur à un autre en utilisant non pas le numeros de ligne mais le titre BONBON (en macro).
j'espère que vous avez compris ma question
merci d'avance
j'ai deux classeur dans lequelle je dois copier des données d'un classeur à un autre.
En effet, j'ai par exemple
une ligne dans mon tableau s'appellant à pour titre BONBON dans la colonne B
exemple:
BONBON | 4% (col C)| 10% (col D)| données allant jusqu'a la colonne X par exemple
je dois copier les pourcentages de la ligne BONBON dans la ligne d'un autre classeur ligne 2 colonne B allant jusqu'a X
ma question serait comment faire pour copier ces données d'un classeur à un autre en utilisant non pas le numeros de ligne mais le titre BONBON (en macro).
j'espère que vous avez compris ma question
merci d'avance
A voir également:
- Copier des données à partir de sa valeur
- Fuite données maif - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Trier des données excel - Guide
- Comment copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
2 réponses
Bonjour,
Rechercher un mot et trouver sa position:
Ensuite tu te sers de l'enregistreur de macro pour faire ton opération et tu pourras mettre la position de BONBON dans la macro ainsi obtenue
Rechercher un mot et trouver sa position:
Sub ChercheMot()
Dim PremCell As String
Dim Cell As Range
Dim maligne As String
Set Cell = Cells.Find("BONBON")
If Not Cell Is Nothing Then
PremCell = Cell.Address
Do
maligne = Cell.Address(RowAbsolute:=False)
maligne = Replace(maligne, "$", "")
MsgBox maligne
Set Cell = Cells.FindNext(Cell)
Loop Until Cell.Address = PremCell
End If
End Sub
Ensuite tu te sers de l'enregistreur de macro pour faire ton opération et tu pourras mettre la position de BONBON dans la macro ainsi obtenue
Voici un exemple où l'on copie la ligne entière où se trouve BONBON de la Feuil1 à la Feuil2 au même endroit. Tout ceci est à adapter suivant le besoins:
Option Explicit
Dim maligne As String
Private Sub CommandButton1_Click()
ChercheMot 'on appelle la sub ChercheMot
Rows(ActiveCell.Row).Select 'sélectionne la ligne entière où se trouve BONBON à modifier suivant les besoins
Selection.Copy
Sheets("Feuil2").Select 'sélectionne feuille destination
Range(maligne).Select 'sélectionne la cellule
Rows(ActiveCell.Row).Select 'sélectionne la ligne entière à modifier suivant les besoins
ActiveSheet.Paste
End Sub
Sub ChercheMot()
Dim PremCell As String
Dim Cell As Range
Set Cell = Cells.Find("BONBON")
If Not Cell Is Nothing Then
PremCell = Cell.Address
'si il y a plusieurs BONBON supprimer la boucle et ne prendre que le 1er
Do
maligne = Cell.Address(RowAbsolute:=False) 'donne la colonne et le numéro de ligne par ex: $G16
maligne = Replace(maligne, "$", "") 'supprime $ pour avoir G16
Range(maligne).Select 'sélectionne la cellule ou se trouve BONBON G16
Set Cell = Cells.FindNext(Cell)
Loop Until Cell.Address = PremCell
End If
End Sub
merci pour votre réponse, est ce qu'il est possible que vous me rajouté des commentaires expliquant ce que fait exactement votre code.
Comme je ne suis pas trés fort en VBA cela me permettrais de mieux comprendre.
merci