A
Asperule
Guest
Bonsoir à toutes et à tous!
La situation est la suivante : Nous voudrions transférer une donnée contenue dans une case d'une feuille Excel nommée CalculHT, vers une case d'une autre feuille nommée Commande et sur laquelle est basée le code.
La macro consiste à transférer un truc en D6 sous le mot désignation (donc en B10) et qu'au prochain appel de la macro, la nouvelle valeur du truc à transférer vienne se mettre une case encore en dessous de désignation(donc en B11) et ainsi de suite.
Notre ébauche de code est en dessous
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'
Dim Reponse As Integer
Dim Bidule As String
'
With WorksheetFunction
Bidule = .Match('Désignation', Sheets('Commande').Rows(9), 0)
End With
Reponse = MsgBox('Confirmes-tu le transfert de données?', vbYesNo)
'
If Reponse = vbNo Then
MsgBox ' Tant pis'
End If
If Ligne = 30 Then
MsgBox ' Tableau Plein'
End If
'
If Reponse = vbYes Then
Ligne = Sheets('Commande').Cells(29, Bidule).End(xlUp).Row + 1
With Sheets('Commande')
.Cells(Ligne, B) = Range('D6')
End With
End If
End Sub
Lors du débogage, une erreur survient à l'instruction : 'Ligne = Sheets('Commande').Cells(29, Bidule).End(xlUp).Row + 1'
On vous joint le fichier Excel.
Merci beaucoup d'avance du temps accordé
Aspérule. [file name=fichier_excel.zip size=9000]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/fichier_excel.zip[/file]
La situation est la suivante : Nous voudrions transférer une donnée contenue dans une case d'une feuille Excel nommée CalculHT, vers une case d'une autre feuille nommée Commande et sur laquelle est basée le code.
La macro consiste à transférer un truc en D6 sous le mot désignation (donc en B10) et qu'au prochain appel de la macro, la nouvelle valeur du truc à transférer vienne se mettre une case encore en dessous de désignation(donc en B11) et ainsi de suite.
Notre ébauche de code est en dessous
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'
Dim Reponse As Integer
Dim Bidule As String
'
With WorksheetFunction
Bidule = .Match('Désignation', Sheets('Commande').Rows(9), 0)
End With
Reponse = MsgBox('Confirmes-tu le transfert de données?', vbYesNo)
'
If Reponse = vbNo Then
MsgBox ' Tant pis'
End If
If Ligne = 30 Then
MsgBox ' Tableau Plein'
End If
'
If Reponse = vbYes Then
Ligne = Sheets('Commande').Cells(29, Bidule).End(xlUp).Row + 1
With Sheets('Commande')
.Cells(Ligne, B) = Range('D6')
End With
End If
End Sub
Lors du débogage, une erreur survient à l'instruction : 'Ligne = Sheets('Commande').Cells(29, Bidule).End(xlUp).Row + 1'
On vous joint le fichier Excel.
Merci beaucoup d'avance du temps accordé
Aspérule. [file name=fichier_excel.zip size=9000]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/fichier_excel.zip[/file]