Bonjour à tous,
Je suis nouveau sur le forum, j'ai cherché et trouvé plusieurs poste mais qui ne résous pas mon problème.
Voici donc mon problème:
Je souhaite copier des informations que j'ai récupéré dans l'onglet 1 dans l'onglet 2/3/4. Pour cela j'ai crée une boucle car chaque information que contiendra l'onglet 2, 3 ou 4 ne seront pas les même.
Pour cela j'ai utilisé le code suivant:
J'ai utilisé ces fonctions car je me suis dit que ça pouvait fonctionner avec les fonctions que j'utilisais pour créer d'autres fichier dont voici un exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 Dim f, i, J, K, boucle As Long Dim sType As String Dim sNumAdd, sTagNameAdd, sTagNameAPI, sTagNameNbAdd, sTypeCarte As String '======================== Affectation des adresses pour onglet ETOR/STOR/EANA/SANA ======================== 'Définition de l'addresse f = 8 boucle = 0 For boucle = 0 To 4 '================= Onglet Rack ============== With ActiveWorkbook.Sheets("Rack") sTagNameAdd = .Cells(f, 9).Value & "." & .Cells(f, 11).Value & "." sTagNameNbAdd = .Cells(f, 13).Value sTypeCarte = .Cells(f, 14).Value f = f + 1 'Nbonglet = Nbonglet + 1 End With '================= Onglet sorties tor ============== If sTypeCarte = "STOR" Then 'Ajout des variables de l'onglet Tor-entree et bool With ActiveWorkbook.Sheets("Tor-Sorties") 'Ecriture des données (1ère ligne de données = 4) i = 4 J = 0 K = 0 While .Cells(i, 3) <> "" And K <= sTagNameNbAdd sTagNameAPI = sTagNameAdd & J Range("G" & i).Select ActiveCell.FormulaR1C1 = sTagNameAPI Range("G" & (i + 1)).Select i = i + 1 J = J + 1 K = K + 1 Wend End With End If Next
Malheureusement les données que je veux copier ne se font pas dans l'onglet choisi mais dans l'onglet ouvert en cours. Je me doute bien avoir loupé quelque chose malheureusement je n'arrive pas à m'en sortir ni trouvé une solution pour ce que je veux faire et qui me semble simple mais pas tant que ça pour moi!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 'Création du fichier PLC TAG f = FreeFile Open scheminfichier + "PLC Tags" + ".csv" For Output As f 'Ecriture entêtet dans fichier Print #f, "Name" & ";" & "Path " & ";" & "Data Type " & ";" & "Logical Address " & ";" & "Comment " & ";" & "Hmi Visible " & ";" & "Hmi Accessible " '================= Traitement des entrées TOR ============== 'Ajout des variables de l'onglet Tor-entree With ActiveWorkbook.Sheets("TOR-entree") 'Paramètre pour onglet sTitre1 = "Table des entrées TOR" sTitre2 = "Bool" sType = "%I" i = 4 'Boucle tant que contenu colonne A non vide While .Cells(i, 1) <> "" sTagNameAdd = sType & .Cells(i, 7) & "." & .Cells(i, 8) sTagNameAPI = """" & "I_" & .Cells(i, 3).Value & "_" & .Cells(i, 5) & """" sLine = sTagNameAPI & ";" & sTitre1 & ";" & sTitre2 & ";" & sTagNameAdd & ";" & .Cells(i, 6) Print #f, sLine i = i + 1 Wend End With
Si quelqu'un peut m'aider je lui en serait reconnaissant.
Cordialement
Partager