Traduction macro vba

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 !

MIKEFLY62

XLDnaute Junior
bonjour,

je n arrive pas a traduire en vba ceci:

apres avoir nommer une cellule active

trouve = ActiveCell

je nomme cette cellule reference "trouve" lors de ma recherche.

comment, après avoir fait plusieurs commandes dans ma macro j'aimerais me re selectionner sur cette même cellule nommée ( ici "trouve") et continuer ma recherche.

merci de votre aide

cordialement

Mike
 
Re : Traduction macro vba

bonjour, le forum, Mikely
tu n'as pas beaucoup cherché mais bon

sansdoute tu as défini le "trouvé" avec set trouvé = find(what .......)
une fois qu'il est sélectionné tu défini un "trouvé2" set trouvé2=trouvé

tu continues ton travail et ensuite tu reviendras sélectionner ton trouvé2 par trouvé2.select
bonne fin de journe
 
Re : Traduction macro vba

re bonjour

Je n y arrive pas avec cette procedure en fait je cherche a traduire cet ancien code vba :


=SELECTIONNER("L()C1")
TROUVEVAL=CELLULE.ACTIVE()
=SELECTIONNER("L2C7")
PREMIERVAL=CELLULE.ACTIVE()

=SEL.CLASSEUR("2007")
ZONE=CELLULE.ACTIVE()
=SELECTIONNER("L2C16")
=TANT.QUE(CELLULE.ACTIVE()<>PREMIERVAL)
=SI(CELLULE.ACTIVE()="FIN";ATTEINDRE(A235))
=SELECTIONNER("L(1)C()")
=SUIVANT()
DEUXIEMEVAL=CELLULE.ACTIVE()
=SELECTIONNER("L()C1:L()C6")
=COPIER()
=SEL.CLASSEUR("RIDERS")
=SELECTIONNER(TROUVEVAL)
=SI(CELLULE.ACTIVE()<>"";SELECTIONNER("L(2)C()");ATTEINDRE(A31))
=COLLER()
=SELECTIONNER("L()C1")
TROUVEVAL=CELLULE.ACTIVE()


Merci
 
Re : Traduction macro vba

Bonsoir à tous


Si tu place ce code, "trouve = ActiveCell", la variable "trouve" prendra la valeur de la cellule active: OK
Si tu cherches l'adresse tu devras placer: "trouveAdr = ActiveCell.address".
Je n'ai pas trop regardé ton code, mais regardes si ce renseignement t'avance dans ton projet ?

A+

René
 
Dernière édition:
Re : Traduction macro vba

bonsoir le forum,
mikefly
va sur le site de boisgontier dans le vba , tu devrais trouver ton bonheur qui ne doit pas être loin de ce qui suit
Private Sub B_ok_Click()
If Me.TextBox1 = "" Then Exit Sub
Application.DisplayAlerts = False
On Error Resume Next
Sheets("Temp").Delete
On Error GoTo 0
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = "Temp"
[A1] = Me.TextBox1
ligne = 2
For i = 1 To Sheets.Count - 1
With Sheets(i).Cells
If IsDate(Me.TextBox1) Then
Set c = .Find(CDate(Me.TextBox1), LookIn:=xlValues, LookAt:=xlPart)
Else
Set c = .Find(Me.TextBox1, LookIn:=xlValues, LookAt:=xlPart)
End If
If Not c Is Nothing Then
premier = c.Address
Do
temp = [A1]
Sheets("temp").Hyperlinks.Add Anchor:=Sheets("temp").Cells(ligne, 1), _
Address:="", SubAddress:="'" & Sheets(i).Name & "'" & "!" & c.Address, TextToDisplay:=temp
Cells(ligne, 2) = Sheets(i).Name
Cells(ligne, 3) = c.Address
ligne = ligne + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> premier
End If
End With
Next i
End Sub

Mais pour reprendre un commentaire plus haut, tu aurais mis un bout de fichier , tu aurais ta réponse depuis bien des jours

bonne soirée
 
Re : Traduction macro vba

voici plutot un autre code qui correspond quand même mieux (il ne doit pas être très propre mais bon)
'

Dim page As String
Dim adcel As String
Dim combo As String
Dim rech As String
Dim trouve1 As Object
Dim plage As Range
Dim vall As Variant
Dim dd As Variant
Dim gkjj As Integer
Dim vall2 As Variant
Dim trouve2 As Variant
On Error Resume Next
gkjj = 0

page = ActiveSheet.Name 'défini la page de départ
adcel = ActiveCell.Address 'défini l'adresse de la cellule

rech = Feuil3.Cells(1, 1).Value
Application.ScreenUpdating = False

Feuil10.Select
trouve2 = Cells(1, 1)
With Feuil10
Range(Cells(2, 13), Cells(3, 26)).Clear
Range(Cells(3, 13), Cells(3, 26)).Select
Selection.NumberFormat = "dd/mm/yy;@"

Columns(7).Select
On Error Resume Next
Selection.Find(What:=(rech), after:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate

Application.CutCopyMode = False
Range(Cells(ActiveCell.Row, ActiveCell.Column + 1), Cells(ActiveCell.Row + 1, ActiveCell.Column + 2)).Select
Selection.Copy
Cells(2, 13).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Columns(4).Select

Set trouve1 = Range("D1😀50").Find(rech, after:=ActiveCell, LookIn:=xlValues) ', LookAt:=_
'xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
', SearchFormat:=False) 'trouve1 sera l première cellule trouvé avec une adresse propre
If trouve1 Is Nothing Then GoTo line3
If gkjj = 20 Then
Exit Sub
Else
trouve1.Select
Set trouve2 = trouve1 'trouve2 prend l'adresse de trouve1
vall2 = Cells(ActiveCell.Row, ActiveCell.Column - 2).Value
vall = Cells(ActiveCell.Row, ActiveCell.Column - 1).Value
Range(Cells(2, 15), Cells(2, 23)).End(xlToLeft).Select
'Range("DZ" & jjjt).End(xlToLeft).Select
ActiveCell.Offset(1, 1).Select
ActiveCell = vall
ActiveCell.Offset(-1, 0).Select
ActiveCell = vall2
Set plage = Range("d2:d300")
Do
With Feuil10.Range("d2:d200")
trouve1.Select
'Columns(4).Activate
line2: Cells.FindNext(after:=ActiveCell).Select
If ActiveCell.Column <> 4 Then GoTo line2
Set trouve1 = Cells.FindNext(after:=ActiveCell)
' Set trouve1 = FindNext(rech, After:=ActiveCell, LookIn:=xlValues)

Set trouve1 = ActiveCell
trouve1.Select
If trouve1.Address = trouve2.Address Then GoTo line3
vall2 = Cells(ActiveCell.Row, ActiveCell.Column - 2).Value
vall = Cells(ActiveCell.Row, ActiveCell.Column - 1).Value
Range(Cells(3, 23), Cells(3, 13)).End(xlToRight).Select
'Range("DZ" & jjjt).End(xlToLeft).Select
ActiveCell.Offset(0, 1).Select
ActiveCell = vall
ActiveCell.Offset(-1, 0).Select
ActiveCell = vall2
dd = trouve1.Address
Cells(1, 11).Value = "trouve1" & trouve1.Column
Cells(2, 11).Value = "trouve2" & trouve2.Column
gkjj = gkjj + 1
End With
Cells(16, 15).Value = trouve1.Address
Cells(16, 16).Value = trouve2.Address
Loop While trouve1.Address <> trouve2.Address



line3: Application.ScreenUpdating = True
End If
End With
Sheets(page).Select 'sélectionne la page de départ
Cells(adcel).Select 'sélectionne la cellule de départ



il n'ya sans doute que quelques lignes qui te seront utiles
bonne soirée
bon courage
 
- 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
6
Affichages
497
Réponses
3
Affichages
604
Réponses
3
Affichages
587
Réponses
21
Affichages
2 K
Retour