Axlsx - 设置单元格内文本的格式

2023-12-21

我似乎找不到任何有关是否可以使用多个格式选项填充单个单元格的信息。

例如,我希望单元格 A1 填充以下文本: ”Hello世界,这是excel"

这可能吗?如果可以,我应该使用什么语法来执行此操作?


对于内联样式,请使用富文本。以下是 axlsx 页面的示例: https://github.com/randym/axlsx/blob/master/examples/example.rb#L843-L860

  p = Axlsx::Package.new
  p.use_shared_strings = true
  wb = p.workbook
  wrap_text = wb.styles.add_style({:alignment => {:horizontal => :center, :vertical => :center, :wrap_text => true}}  )
  rt = Axlsx::RichText.new
  rt.add_run('I\'m bold, ', :b => true)
  rt.add_run('I\'m italic, ', :i => true)
  rt.add_run('I\'m strike' + "\n", :strike => true)
  rt.add_run('I\'m bold, italic and strike' + "\n", :b => true, :i => true, :strike => true)
  rt.add_run('I\'m style-less :D')
  wb.add_worksheet(:name => "RichText") do | sheet |
    sheet.add_row [rt], :style => wrap_text
  end
  p.serialize 'rich_text.xlsx'

如果您只想对单元格应用多种样式,则需要差异化样式。有两种选择:

首先,手动进行。基本上你说你的风格类型是:dxf。默认为:xf。其他一切都一样。来自 styles.rb 的文档: https://github.com/randym/axlsx/blob/master/lib/axlsx/stylesheet/styles.rb#L196

p = Axlsx::Package.new
wb = p.workbook
ws = wb.add_worksheet

# define your styles
profitable = wb.styles.add_style(:bg_color => "FFFF0000",
                           :fg_color=>"#FF000000",
                           :type => :dxf)

ws.add_row ["Genreated At:", Time.now], :styles=>[nil, date_time]
ws.add_row ["Previous Year Quarterly Profits (JPY)"], :style=>title
ws.add_row ["Quarter", "Profit", "% of Total"], :style=>title
ws.add_row ["Q1", 4000, 40], :style=>[title, currency, percent]
ws.add_row ["Q2", 3000, 30], :style=>[title, currency, percent]
ws.add_row ["Q3", 1000, 10], :style=>[title, currency, percent]
ws.add_row ["Q4", 2000, 20], :style=>[title, currency, percent]

ws.add_conditional_formatting("A1:A7", { :type => :cellIs, :operator => :greaterThan, :formula => "2000", :dxfId => profitable, :priority => 1 })
f = File.open('example_differential_styling', 'w')
p.serialize(f)

其次,使用axlsx_styler https://github.com/sakovias/axlsx_styler宝石。它使得应用多种样式变得非常容易。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Axlsx - 设置单元格内文本的格式 的相关文章

随机推荐

  • 将显示的价格替换为缺货 WooCommerce 产品的文本

    我不是专家 但我需要在我的 Woocommerce 产品页面中更改 out of stoke 产品的价格 我找到了如何将价格更改为 已售出 并且有效 Change price to sold add filter woocommerce p
  • 为什么使用参数化查询或实体框架可以防止 SQL 注入?

    我已经很好地掌握了 SQL 注入 当 SQL 查询应该是这样的时候 SELECT FirstName LastName FROM Customers WHERE CustomerId valueFromApplication 变成这样的查询
  • Spring Bean 的公共访问修饰符和模块导出

    Spring bean 类 Spring 应用程序上下文设置的对象的类 必须是public课程 让 Spring 创建这些对象 显然 如果yourbeans 访问不同包中的其他 beans 你的 beans 必须是public彼此互动 我的
  • O_NONBLOCK 是否被设置为文件描述符或底层文件的属性?

    根据我在 The Open Group 网站上读到的内容fcntl http www opengroup org onlinepubs 009695399 functions fcntl html open http www opengro
  • Phonegap iPad 应用程序启动画面/启动屏幕在 deviceReady 上切换

    我有一个使用 HTML JS CSS Phonegap 创建的 iPad 应用程序 仅限横向 一切都按预期进行 但是我遇到了启动画面 启动屏幕的问题 当应用程序加载时 会显示正确的启动画面 正确的大小和命名等 但是一旦应用程序达到 devi
  • Google Billing API:订阅购买后不久,会触发订阅过期,然后立即续订订阅

    我正在使用 Firebase Cloud Functions 来处理应用内购买的后端流程 如果我购买订阅 在 Flutter Android 客户端上 购买流程将毫无问题 但是 当第一次续订发生时 我首先收到订阅已过期的实时开发人员通知 大
  • 本地化比较属性

    这个问题的底部是一个包含三个属性的模型 OldPassword NewPassword 和ConfirmPassword 这些显示在更改密码表单中 我已本地化了所有错误消息 但以下一条除外 当 Compare 属性失败时 我无法完全本地化错
  • 我有一个 Vertx 请求,我需要计算一个外部可见(公共)URL

    我将 Vertx 3 与 Kotlin 结合使用 有时我需要从公共 URL 的角度返回一个特定的 URI 该 URI 与 Vertx web 请求认为我的 URL 不同 这可能是由于我的负载均衡器或代理接收一个 URL 然后通过内部 URL
  • Javascript-变量提升

    这是一个简单的片段 我只是不明白 下面的代码输出 12 我明白 因为var foo 12 替换先前的变量声明 在下面的代码中 它会发出警报1 这意味着在函数外部声明的变量可以在函数内部访问 但是 在下面的代码中 为什么它会警告未定义 我以为
  • CSS:最大宽度不会缩小? [复制]

    这个问题在这里已经有答案了 可能的重复 使 CSS Div 宽度等于内容宽度 https stackoverflow com questions 450903 make css div width equal to contents 我正在
  • 亚马逊MWS feed API问题,取消订单

    请帮我解决这个问题 我很久以前就尝试通过 MWS Feed API 取消亚马逊订单 但它根本没有取消 Feed 提交一切正常 但订单并未取消 下面是我的 Feed XML 我们正在使用我尝试过的报告类型 POST ORDER ACKNOWL
  • Python 是否评估前向引用的类型提示?

    我正在查看 PEP 484 部分转发参考文献 https www python org dev peps pep 0484 forward references并注意到以下声明 该定义可以表示为字符串文字 稍后解决 这让我想知道 稍后 是什
  • 从最小化状态恢复表单时,WS_EX_COMPOSITED 会导致无休止的重画

    The Form从最小化状态恢复时需要无尽的时间来重新绘制 The Form是无国界的 我凌驾于一切之上WndProc and 创建参数 我正在恢复无边界Form从最小化状态到正常状态 我凌驾于一切之上创建参数降低阴影并停止闪烁的方法 pr
  • 按三个不同列中的最大值排序

    我什至不确定是否可以执行此操作 但我想根据三列之一的最大值来排序查询 表结构示例 引导 列 1 列 2 列 3 第 1 3 列有数值 我想根据 1 2 OR 3 的最大值对 select 语句进行排序 例如 record column1 c
  • Akka testkit:时间因素是多少?

    Akka TestProbe 上有多种方法表示它们 正确处理 timeFactor 这意味着什么 http doc akka io api akka 2 0 akka testkit TestProbe html http doc akka
  • NFA 与 DFA 的时间复杂度权衡

    我正在寻找关于 nfa 或 dfa 哪个更好使用以及在编译器中什么情况下使用的讨论 模拟 nfa 与 dfa 的时间复杂度权衡是什么 在编译器的什么情况下 哪一个更合适 从 NFA 构造 DFA 的时间为 O 2 m 其中 m 是节点数 D
  • AWS S3 预签名 URL 包含 X-Amz-Security-Token

    我正在尝试使用 go sdk 为 S3 存储桶中的文件创建预签名 URL 当我从命令行运行程序时 我得到了不包含 X Amz Security Token 的预签名 URL 但如果我使用 lambda 函数中的相同代码 我总是会在 URL
  • 在 Python 类中支持等价性(“平等”)的优雅方法

    在编写自定义类时 通过以下方式允许等效性通常很重要 and 运营商 在 Python 中 这是通过实现 eq and ne 分别采用特殊方法 我发现执行此操作的最简单方法是以下方法 class Foo def init self item
  • 使用 Gtk 3 在 Python 中加载并显示来自网络的图像?

    我正在 Ubuntu 12 04 上使用 Python 和 GTK 3 编写一个应用程序 我遇到的问题是我不知道应该如何使用来自网络的图像文件在我的应用程序中显示 Gtk Image 据我所知 from gi repository impo
  • Axlsx - 设置单元格内文本的格式

    我似乎找不到任何有关是否可以使用多个格式选项填充单个单元格的信息 例如 我希望单元格 A1 填充以下文本 Hello世界 这是excel 这可能吗 如果可以 我应该使用什么语法来执行此操作 对于内联样式 请使用富文本 以下是 axlsx 页