Bonjour,
Je suis étudiant et réalise actuellement un stage. Je dois réaliser un outil d'analyse en me basant sur Excel (je debute en vba).
Voici mon code:
Ceci est mon sub "principal"
Sub Valider1()
Sonde = verif(Sheets("choix").Range("E3").Value, Sheets("choix").Range("A3").Value)
Range("G3").Value = Sonde
End Sub
ma fonction verif
Function verif(Cell As String, sheet As String)
Dim capt As String
Dim cop As Range
capt = "a"
On Error Resume Next
capt = Sheets(sheet).Range(Cell).Value
On Error GoTo 0
If capt = "a" Then
MsgBox (Cell & " n'est pas une entrée valide")
Else
Call CopieLigne(Cell, sheet)
verif = capt
End If
End Function
et mon Sub copie ligne (j'ai crée ce sub appelé par ma fonction car les manipulations ci-dessous posais probleme dans la fonction pour des raisons qui m'echape)
Sub CopieLigne(Cell As String, sheet As String)
Sheets(sheet).Select
Range(Cell, Range(Cell).End(xlToRight)).Select
Selection.Copy
Worksheets(Capteurs).Activate
Sheets("Capteurs").Range("A1").Select
Selection.PasteSpecial Transpose:=True
End Sub
L'erreur proviendrais de Copieligne a cette ligne m'indiquant "la methode select de la classe range a échoué".
Sheets("Capteurs").Range("A1").Select
L'idée de ce morceau de code est de copier (a partir d'une cellule indiqué par l'utilisateur en E3 de ma feuille "choix") une ligne d'une feuille sur laquelle se trouve des caractères, dans une autre feuille "Capteurs" en colonne.
J'espere avoir été assez clair et espere un petit coup de main je reste bien sur a votre disposition pour quelques point que j'aurais oublié.
Merci.