J'ai un petit soucis avec le fichier, je n'arrive pas à créer un code. Je m'explique à partir de la feuille synthèse je rentre mes données, je remplis les cellules correspondantes à la ligne concernée dans la colonne c et cela me génère une nouvelle feuille.
Maintenant j'aimerai reporter automatiquement sur ma feuille Synthèse dans les cellule de B20 à B100 la valeur des cellules S67 de chaque feuille crées et surtout à chaque ajout d'une nouvelle feuille que cela vienne s'ajouter au dessous de la dernière cellule pleine .
Sub test_ok()
Dim f As Worksheet
For Each f In Worksheets
If Not f.Name Like "Synthèse" Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
Sub test_ok()
Dim f As Worksheet
For Each f In Worksheets
If Not f.Name Like "Synthèse" Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
J'ai bien évidemment inhibé ce code présent dans la feuille Synthèse
Code:
'Private Sub Worksheet_Change(ByVal Target As Range)
'If Not Application.Intersect(Target, Range("C4:C50" & Range("B100").End(3).Row)) Is Nothing Then
'Call Creer_Supprimer(Target)
'Sheets("Synthèse").Activate
'End If
'End Sub
Fais-en de même, et tu verras que ma macro fonctionne.
Oui je pense bien que ton code fonctionne, vu que je suis novice dans le VBA ou mets-tu ce code ? dans la feuil1(Synthèse) ou dans le module1 car j'ai essayé dans le 2 mais je ne vois rien dans la colonne B
Sub test_ok_B()
Dim f As Worksheet
For Each f In Worksheets
If Not f.Name Like "Synthèse" And Not f.Name Like "Type" Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
ou cela également
Code:
Sub test_ok_C()
Dim f As Worksheet
For Each f In Worksheets
If Not InStr("SynthèseType", f.Name) > 0 Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
Sub test_ok_B()
Dim f As Worksheet
For Each f In Worksheets
If Not f.Name Like "Synthèse" And Not f.Name Like "Type" Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
ou cela également
Code:
Sub test_ok_C()
Dim f As Worksheet
For Each f In Worksheets
If Not InStr("SynthèseType", f.Name) > 0 Then
Sheets("Synthèse").Cells(Rows.Count, 2).End(3)(2) = f.[S67]
End If
Next
End Sub
@Nando71
Oui car j'essaue d'être logique
Ta feuille Synthèse ne se nomme pas FeuilleSynthèse mais Synthèse
Partant de là, je nomme la feuille Type, Type
Logique, non ?
Il me faut encore une dernière chose stp ! C'est que lorsque je modifie la valeur des cellules S67 dans les feuilles cela me la change aussi automatiquement dans la feuille synthèse ou cela est reporté