J'ai un problème lors de la mise à jour de mon classeur Excel avec vb.net.format conditionnel lors de la mise à jour Excel Workbook en utilisant vb.net
Fondamentalement, je vais créer un calendrier dans Excel. Donc, à ma première ligne dans Excel j'ai sur chaque cellule une date.
pour les cellules C2
à I2
I ont un format conditionnel avec une formule:
=AND(C$1>=$A2;C$1<=$B2)
Cela fonctionne très bien. Quand je change la valeur de B2
en utilisant vb.net Microsoft.Office.Interop.Excel
Dim ExcelFolder As String
Dim selectedfile As String
Dim excel As Application
Dim workbook As Workbook
Dim sheet As Worksheet
ExcelFolder = "C:\temp"
selectedfile = ExcelFolder & "\" & "test.xlsx"
excel = New Application
excel.Workbooks.Open(selectedfile)
workbook = excel.ActiveWorkbook
sheet = workbook.Worksheets(2)
'change value on B2
sheet.Cells(2, 2) = "07.10.2017"
workbook.SaveAs("test.xlsx", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, Type.Missing, Type.Missing, False, False, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing)
workbook.Close()
excel.Quit()
System.Runtime.InteropServices.Marshal.ReleaseComObject(excel) : excel = Nothing
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook) : workbook = Nothing
System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet) : sheet = Nothing
Il va changer la valeur, mais l'arrière-plan ne changerait pas. Je dois aller manuellement à la cellule B2
et appuyez sur ENTRÉE à nouveau, après que le format conditionnel fonctionnera. J'ai essayé d'écrire une Date dans la cellule ou de changer le format de la cellule avant et après l'insertion à Date, sans succès. J'ai également essayé d'ajouter un format conditionnel avec vb.net après avoir inséré les nouvelles données, sans aucun succès. Avez-vous des idées?
La propriété EnableCalculation est vrai, mais la mise en forme conditionnelle ne fonctionnera pas. – SirThouby
Hmm, je me demande si appeler sheet.Calculate() (après avoir appliqué des valeurs) déclenchera le formatage conditionnel. – N0Alias