summaryrefslogtreecommitdiffhomepage
path: root/examples/sheet_protection_example.md
diff options
context:
space:
mode:
authorZsolt Kozaroczy <[email protected]>2020-09-11 00:36:29 +0200
committerGitHub <[email protected]>2020-09-11 00:36:29 +0200
commit282eec44ef01746ee25931fa6cd287ad083fd40b (patch)
tree14504bf429ca264812679ca971c1592853d3f762 /examples/sheet_protection_example.md
parent317e8244e4d17c394c1e181f86df3974623fb865 (diff)
downloadcaxlsx-282eec44ef01746ee25931fa6cd287ad083fd40b.tar.gz
caxlsx-282eec44ef01746ee25931fa6cd287ad083fd40b.zip
Restructure examples folder (#47)
Split examples into separate markdown files, each containing a description, sample code, and a screenshot of the resulting xlsx document. The script `generate.rb` is provided to actually generate the example documents by executing the sample code contained in the markdown files.
Diffstat (limited to 'examples/sheet_protection_example.md')
-rw-r--r--examples/sheet_protection_example.md35
1 files changed, 35 insertions, 0 deletions
diff --git a/examples/sheet_protection_example.md b/examples/sheet_protection_example.md
new file mode 100644
index 00000000..da3a4f21
--- /dev/null
+++ b/examples/sheet_protection_example.md
@@ -0,0 +1,35 @@
+## Description
+
+You could lock sheets and exclude some of the cells.
+
+## Code
+
+```ruby
+require 'axlsx'
+
+p = Axlsx::Package.new
+wb = p.workbook
+
+s = wb.styles
+unlocked = s.add_style locked: false
+
+wb.add_worksheet(name: 'Sheet Protection') do |sheet|
+ sheet.sheet_protection do |protection|
+ protection.password = 'fish'
+ protection.auto_filter = false
+ end
+
+ sheet.add_row [1, 2, 3], style: unlocked # These cells won't be locked
+ sheet.add_row [4, 5, 6]
+ sheet.add_row [7, 8, 9]
+
+ # Set up auto filters
+ sheet.auto_filter = 'A1:C3'
+end
+
+p.serialize 'sheet_protection_example.xlsx'
+```
+
+## Output
+
+![Output](images/sheet_protection_example.png "Output")