Utiliser .Find à partir d'une variable définie par une InputBox

  • Initiateur de la discussion Initiateur de la discussion Scrat
  • Date de début Date de début

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 !

S

Scrat

Guest
Bonjour à tous,
Voilà après de nombreuses tentatives pour tourner mon code dans tous les sens je n'arrive toujours pas à faire ce que je voudrais...
A savoir récupérer la ligne et la colonne d'une cellule où serait rangée la valeur d'une variable que je demande de rentrer à l'utilisateur par une inputbox...
(cette valeur se trouve sans une autre sheet ("CURVE_DATA_BASE")
Pour tester mon code j'affiche des msgbox si la var est trouvée ou non...
(ensuite j'aimerais faire autre chose de cette ligne+colonne mais hors sujet)
Voila la dernière version de mon code :

Dim Curve_Name As String
Dim celluletrouvee As Range
Dim ligne As Integer
Dim col As Integer
Dim x As String

Curve_Name = InputBox(Prompt:="Enter the curve to be treated", _
title:="CURVE TREATMENT", Default:="CU_ASCII_")

On Error Resume Next
x = Worksheets("Treatment").Cells.Find(What:=Curve_Name, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Address
Set celluletrouvee = Range(x)
ligne = celluletrouvee.Row
col = celluletrouvee.Column
If Not celluletrouvee Is Nothing Then
MsgBox ("trouvé : ligne = " & ligne & " , colonne = " & col)
Else
MsgBox ("pas trouvé : ligne = " & ligne & " , colonne = " & col)
End If

If Curve_Name = "CU_ASCII_" Or _
Curve_Name = vbNullString Then
MsgBox "Fill the field", vbCritical, "warning"

Exit Sub

Else

Select Case Curve_Name

Case Curve_Name = Curve_Name_var
'build graph

Case Else

MsgBox "Undefined", vbCritical, "warning"


End Select

End If

End Sub

toute suggestion est bonne à prendre...
merci
 
Re : Utiliser .Find à partir d'une variable définie par une InputBox

Bonjour,

le code ci-dessous fonctionne chez moi, maintenant à voir selon le type de donnée traité :

Code:
Sub test()
Dim Curve_Name As String, x As Range

Curve_Name = InputBox(Prompt:="Enter the curve to be treated", _
Title:="CURVE TREATMENT", Default:="CU_ASCII_")

Set x = Cells.Find(What:=Curve_Name, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns)

If Not x Is Nothing Then
    MsgBox ("trouvé : ligne = " & x.Row & " , colonne = " & x.Column)
Else
    MsgBox ("pas trouvé ")
End If
End Sub

bon après midi
@+
 
Re : Utiliser .Find à partir d'une variable définie par une InputBox

Merci, ça fonctionne !
Alors je sais pas ce qui a été arrangé, en tout cas ça clarifie nettement toutes mes anciennes redondances.
Merci beaucoup.
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
7
Affichages
366
Retour