Protéger une colonne spécifique dans une feuille de calcul Excel

Lorsque vous travaillez avec des feuilles de calcul Excel en C#, il est souvent nécessaire de protéger des colonnes spécifiques pour éviter des modifications accidentelles. Dans ce didacticiel, nous vous guiderons tout au long du processus de protection d’une colonne spécifique dans une feuille de calcul Excel à l’aide de la bibliothèque Aspose.Cells for .NET. Nous vous fournirons une explication étape par étape du code source C# requis pour cette tâche. Alors, commençons!

Présentation de la protection de colonnes spécifiques dans une feuille de calcul Excel

La protection de colonnes spécifiques dans une feuille de calcul Excel garantit que ces colonnes restent verrouillées et ne peuvent pas être modifiées sans autorisation appropriée. Ceci est particulièrement utile lorsque vous souhaitez restreindre l’accès en modification à certaines données ou formules tout en permettant aux utilisateurs d’interagir avec le reste de la feuille de calcul. La bibliothèque Aspose.Cells for .NET fournit un ensemble complet de fonctionnalités pour manipuler les fichiers Excel par programme, y compris la protection des colonnes.

Configuration de l’environnement

Avant de commencer, assurez-vous que la bibliothèque Aspose.Cells for .NET est installée dans votre environnement de développement. Vous pouvez télécharger la bibliothèque depuis le site officiel d’Aspose et l’installer à l’aide du programme d’installation fourni.

Création d’un nouveau classeur et d’une nouvelle feuille de calcul

Pour commencer à protéger des colonnes spécifiques, nous devons créer un nouveau classeur et une nouvelle feuille de calcul à l’aide d’Aspose.Cells pour .NET. Voici l’extrait de code :

//Le chemin d'accès au répertoire des documents.
string dataDir = "YOUR DOCUMENT DIRECTORY";

// Créez un répertoire s'il n'est pas déjà présent.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);

// Créez un nouveau classeur.
Workbook wb = new Workbook();

// Créez un objet de feuille de calcul et obtenez la première feuille.
Worksheet sheet = wb.Worksheets[0];

Assurez-vous de remplacer « VOTRE RÉPERTOIRE DE DOCUMENTS » par le chemin du répertoire réel dans lequel vous souhaitez enregistrer le fichier Excel.

Définition des objets Style et Indicateur de style

Afin de définir des styles et des indicateurs de protection spécifiques pour les colonnes, nous devons définir le style et les objets d’indicateur de style. Voici l’extrait de code :

// Définissez l'objet de style.
Style style;

// Définissez l'objet drapeau de style.
StyleFlag flag;

Parcourir les colonnes et les déverrouiller

Ensuite, nous devons parcourir toutes les colonnes de la feuille de calcul et les déverrouiller. Cela garantira que toutes les colonnes sont modifiables à l’exception de celle que nous souhaitons protéger. Voici l’extrait de code :

// Parcourez toutes les colonnes de la feuille de calcul et déverrouillez-les.
for (int i = 0; i <= 255; i++)
{
    style = sheet.Cells.Columns[(byte)i].Style;
    style.IsLocked = false;
    flag = new StyleFlag();
    flag.Locked = true;
    sheet.Cells.Columns[(byte)i].ApplyStyle(style, flag);
}

Verrouillage d’une colonne spécifique

Maintenant, verrouillons une colonne spécifique. Dans cet exemple, nous verrouillerons la première colonne (index de colonne 0). Voici l’extrait de code :

// Obtenez le premier style de colonne.
style = sheet.Cells.Columns[0].Style;

// Verrouille le.
style.IsLocked = true;

Application de styles aux colonnes

Après avoir verrouillé la colonne spécifique, nous devons appliquer le style et l’indicateur à cette colonne. Voici l’extrait de code :

//Instanciez le drapeau.
flag = new StyleFlag();

// Définissez le paramètre de verrouillage.
flag.Locked = true;

// Appliquez le style à la première colonne.
sheet.Cells.Columns[0].ApplyStyle(style, flag);

Protéger la feuille de calcul

Pour finaliser la protection, nous devons protéger la feuille de calcul pour garantir que les colonnes verrouillées ne puissent pas être modifiées. Voici l’extrait de code :

// Protégez la feuille.
sheet.Protect(ProtectionType.All);

Enregistrement du fichier Excel

Enfin, nous enregistrerons le fichier Excel modifié à l’emplacement souhaité. Voici l’extrait de code :

// Enregistrez le fichier Excel.
wb.Save(dataDir + "output.out.xls", SaveFormat.Excel97To2003);

Assurez-vous de remplacer “output.out.xls” par le nom de fichier et l’extension souhaités.

Exemple de code source pour protéger une colonne spécifique dans une feuille de calcul Excel à l’aide d’Aspose.Cells pour .NET

//Le chemin d'accès au répertoire des documents.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Créez un répertoire s'il n'est pas déjà présent.
bool IsExists = System.IO.Directory.Exists(dataDir);
if (!IsExists)
    System.IO.Directory.CreateDirectory(dataDir);
// Créez un nouveau classeur.
Workbook wb = new Workbook();
// Créez un objet de feuille de calcul et obtenez la première feuille.
Worksheet sheet = wb.Worksheets[0];
// Définissez l'objet de style.
Style style;
// Définissez l'objet styleflag.
StyleFlag flag;
// Parcourez toutes les colonnes de la feuille de calcul et déverrouillez-les.
for (int i = 0; i <= 255; i++)
{
    style = sheet.Cells.Columns[(byte)i].Style;
    style.IsLocked = false;
    flag = new StyleFlag();
    flag.Locked = true;
    sheet.Cells.Columns[(byte)i].ApplyStyle(style, flag);
}
// Obtenez le premier style de colonne.
style = sheet.Cells.Columns[0].Style;
// Verrouille le.
style.IsLocked = true;
//Instanciez le drapeau.
flag = new StyleFlag();
// Définissez le paramètre de verrouillage.
flag.Locked = true;
// Appliquez le style à la première colonne.
sheet.Cells.Columns[0].ApplyStyle(style, flag);
// Protégez la feuille.
sheet.Protect(ProtectionType.All);
// Enregistrez le fichier Excel.
wb.Save(dataDir + "output.out.xls", SaveFormat.Excel97To2003);

Conclusion

Dans ce didacticiel, nous avons expliqué le processus étape par étape de protection d’une colonne spécifique dans une feuille de calcul Excel à l’aide de la bibliothèque Aspose.Cells for .NET. Nous avons commencé par créer un nouveau classeur et une nouvelle feuille de calcul, en définissant le style et les objets d’indicateur de style, puis nous avons procédé au déverrouillage et au verrouillage de colonnes spécifiques. Enfin, nous avons protégé la feuille de calcul et enregistré le fichier Excel modifié. En suivant ce guide, vous devriez désormais pouvoir protéger des colonnes spécifiques dans des feuilles de calcul Excel à l’aide de C# et Aspose.Cells pour .NET.

Foire aux questions (FAQ)

Puis-je protéger plusieurs colonnes en utilisant cette méthode ?

Oui, vous pouvez protéger plusieurs colonnes en modifiant le code en conséquence. Parcourez simplement la plage de colonnes souhaitée et appliquez les styles de verrouillage et les indicateurs.

Est-il possible de protéger par mot de passe la feuille de calcul protégée ?

Oui, vous pouvez ajouter une protection par mot de passe à la feuille de calcul protégée en spécifiant le mot de passe lors de l’appel duProtect méthode.

Aspose.Cells pour .NET prend-il en charge d’autres formats de fichiers Excel ?

Oui, Aspose.Cells for .NET prend en charge divers formats de fichiers Excel, notamment XLS, XLSX, XLSM, etc.

Puis-je protéger des lignes spécifiques au lieu de colonnes ?

Oui, vous pouvez modifier le code pour protéger des lignes spécifiques au lieu de colonnes en appliquant les styles et les indicateurs aux cellules de ligne plutôt qu’aux cellules de colonne.