Appliquer une condition en fonction d'un style de texte
M
Bonjour,
J'importe des données dans un classeur(jusque là tout va bien).
J'aimerais que lorsque mes dalles appartiennent à un niveau de fondations, elles n'affichent pas de coffrage.
Je précise que je ne peux pas joindre de fichier
Voici un morceau de code (en couleur celui qui pose problème) :
'ouverture des fichiers d'export de dalles
If Dir(tabFch(1, 2)) = "" Then
Else: Workbooks(tabFch(1, 1)).Sheets(1).Activate
nblgTt = Range("B" & Rows.Count).End(xlUp).Row + 1
For I = 1 To nblgTt
Workbooks(tabFch(1, 1)).Sheets(1).Activate
'Pour la condition suivante: (bon niveau)
If Cells(I, 1) = tabNiv(A) Then
'on ajoute une ligne avec les formules correspondantes à l'élément
ThisWorkbook.Sheets("basequantitatif").Activate
Range("base_dalle").Select
Selection.Copy
ThisWorkbook.Sheets("quantitatif").Activate
ActiveSheet.Paste
ActiveCell.Offset(0, 0).Select
[color=#80FFBF]Dim glass As Range, kl As Integer
For Each glass In Intersect(ActiveSheet.UsedRange, Columns("B:B"))
If glass.Font.Bold = True And glass.Value Like "*Fondations*" Then
ActiveCell.Offset(0, 11) = ""
kl = 0
Else
kl = kl + 1
If kl > 100 Then
Exit For
End If
End If
Next[/color]
'puis on insère les données voulues dans notre quantitatif
' 1ere donnée
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 2) = Workbooks(tabFch(1, 1)).Sheets(1).Cells(I, 2)
' 2eme donnée
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 5) = Workbooks(tabFch(1, 1)).Sheets(1).Cells(I, 4)
' 3eme donnée
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 7) = Workbooks(tabFch(1, 1)).Sheets(1).Cells(I, 5)
' 4eme donnée
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 15) = Workbooks(tabFch(1, 1)).Sheets(1).Cells(I, 10)
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 16).Select
Sheets("basequantitatif").Range("AD7: AD9").Name = " plagelist"
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="= plagelist"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = "Sélection Ratio"
.ErrorTitle = ""
.InputMessage = "Choisissez une unité"
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
' 5eme donnée
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 17) = Workbooks(tabFch(1, 1)).Sheets(1).Cells(I, 12)
ThisWorkbook.Sheets("quantitatif").Cells(ActiveCell.Row, 18).Select
Sheets("basequantitatif").Range("AD7: AD9").Name = " plagelist"
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="= plagelist"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = "Sélection Ratio"
.ErrorTitle = ""
.InputMessage = "Choisissez une unité"
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
ThisWorkbook.Sheets("quantitatif").Activate
ActiveCell.Offset(1, -17).SelectMon problème est que si j'ai plusieurs dalles au niveau fondations, alors il ne supprime le coffrage que sur la première. Et si j'ai plusieurs niveaux de fondations, il n'en tient pas compte.
Si quelqu'un a une idée, je suis preneuse !
Merci beaucoup