投稿

DTPでよく使うエクセル関数の使い方を丁寧に紹介【まとめ】

イメージ
はじめに 注意: 関数の挙動についてはMac版Excelでの確認になります。Windows版については動作確認をしておりません。予めご了承ください。 DTP業界に従事していて、Excelを使ってのテキストの整形作業を行っている人はどれだけいるのかわかりませんが、自身はかなり多用しています。 筆者の仕事は、そうした方が効率的な内容のものだからです。 それらは、InDesignで「データ結合」することを前提としています。 名刺の大人数発注 DMなどの宛名印字 情報を冊子用テキストに変換 上記の上2つは、Excelで作成された名簿・個人録・一覧が、顧客より渡される場合が多くあります。そのテキスト類をExcel関数で加工し、レイアウトフォーマットに適合するようにします。 3番目は、予め関数を組み込んだExcelを顧客に渡し、それに必要なテキストを入力してもらいます。そして、入力されたテキストを別シートへ、関数で加工しながら読み込み、レイアウトフォーマットに適合するようにします。 これをすることで、作業効率は飛躍的に向上します。 手作業がほぼ無くなるので、反復作業から解放されます。 Excel関数での処理の考え方 Excel関数を使用することで、作業に伴うリスクを極力抑えることもできます。 テキストを手作業で加工する必要がなくなる。 →加工ミス、加工し忘れ、コピペミス、などのリスクを避けられる 原稿自体を触る必要がなくなる。 →ミスがどこの段階で発生したかが分かる 関数は原稿を参照するだけで、原稿を変更することはないからです。 目次―使用頻度の多い関数 DTPでよく使用する関数は、テキスト整形に関係するものになります。 以下に、よく使用する関数の一覧を挙げています。リンクから、各関数の使い方を紹介しているページへ行ってみてください。 ADDRESS AND ASC CHAR CLEAN COLUMN CONCAT CONCATENATE COUNTIF FIND IF IFS INDIRECT ISBLANK ISERROR ISINDEX JIS LEFT LEN MID NOT OR ROW RIGHT SUBSTITUTE TEXTJOIN TRIM VLOOKUP

【まとめ】Macでphpを実行する環境をDockerに構築する方法

イメージ
そろそろphpを勉強したくなったので、phpとApacheにて開発環境をDocker内に構築しようと思う。 (Apacheに次いで人気のNginxは別のコンテナを作る必要があったりと、初心者には敷居が高いので今回は見送り) 目次 必要なもの phpの公式イメージを確認 ファイルの階層 phpファイルの作成 イメージとコンテナの作成 設定できたかの確認 参照 1. 必要なもの 今回はデータベース(mysql等)は使用せず、単にphpを実行してみたい場合の設定になる。 Docker Desktop phpの公式イメージ(Apacheを含む) index.php phpの公式イメージはDocker Hubから自動ダウンロード出来る。 index.phpは、表示させたい文字列を簡単なphpコードで記述したもの。 2. phpの公式イメージを確認 Docker Hub のサイトに行き、ページ上部の検索フォームに「 php 」と入力 検索結果の最上位にphpのOfficial Imageと印付けられた項目が表示される それをクリックすると phpの公式イメージページ が表示される。 その下の「 Supported tags and respective Dockerfile links 」内の 「 See " Supported tags and respective Dockerfile links" at https://github.com/docker-library/docs/tree/master/php/README.md 」のリンクをクリック 使用できるイメージのタグ一覧が表示される。 その中の「apache」のタグを使うのでメモしておく 3. ファイルの階層 phpファイルを置く場所を決め、それを置いたフォルダの相対パスを確認する。 Desktop └php_test フォルダ │ └index.php ファイル 相対パスで表示すると、 ~/Desktop/php_test 4. phpファイルの作成 新規で「index.php」のPHPファイルを作成して、以下のコードを入力。 <?php e

【まとめ】MacでPythonのGUIライブラリが使えるDockerの設定方法

イメージ
PythonのGUIライブラリをDocker Container内で稼働させようと模索して、よもやカスタマイズしたDocker Imageを作成するどころかDockerfileやらDocker Composeやらを書くことになる日がこんなに早く来るとは思っても見ませんでした。 習うより慣れろ この言葉、やはり真理を突いています。 この言葉の真意、それは「インプットしたら即座にアウトプットしろ」。 真意を理解できた、そんな期間でした。 さて、 MacでPythonのGUIライブラリをDocker Container内のJupyterlabから稼働させる方法 MacでPythonのGUIライブラリが使用可能なDockerをDockerfileにしてみた にて、Docker Container内に構築したPythonとGUIライブラリを、Jupyterlabを介して稼働させる方法を模索してきました。 改めて、何をしたいか、何が必要か、をまとめ、こちらの環境もまとめてから、完成したDockerfileとDocker Composeを公開し、どのようにしたかを解説していきます。 目次 開発環境 したいこと 階層構造 Dockerfileの解説 Docker Composeの解説 今後の課題 参考サイト 開発環境 環境は、 マシン:MacBook Pro OS:macOS Big Sur(11.6.1) 仮想環境:Docker Desktop エディタ:JupyterLab、Sublime Text 上記に追加で、 予めXquartzの導入と設定が必要 になります。 導入および設定の方法は、拙ブログの『 1 MacにXQuartzをインストール 』および『 2 XQuartzの環境設定を開く 』をご覧ください。 したいこと PythonをDockerで動かしたい Pythonは、同じくDockerに導入したJupyterlabで編集したい PythonのGUIライブラリ(Tkinter、pillow、openpyxl)もJupyterlabで編集したい PythonのGUIライブラリの結果はMacのデスクトップ

【Vol.1】13 The HTML syntax|HTML文書を読んでHTMLにより詳しくなる!

イメージ
原文 13 The HTML syntax Note This section only describes the rules for resources labeled with an HTML MIME type. Rules for XML resources are discussed in the section below entitled "The XML syntax". HTML Living Standard 訳文 13 HTML構文 注 この節では、HTML MIMEタイプとして扱われるものの規則についてのみ説明する。XMLリソースの規則については、以下の「XML構文」の項で説明する。 用語と訳の解説 syntax (linguistics) the way that words and phrases are put together to form sentences in a language; the rules of grammar for this (computing) the rules that state how words and phrases must be used in a computer language ある言語において、単語や句が組み合わされて文章を形成する方法、およびそのための文法規則 コンピュータ言語の中で、単語や句をどのように使用しなければならないかを定めた規則 Oxford Advanced Learner’s Dictionary (言語学の)統語論、統辞論、構文論 文がどのような構造を持つかを研究する言語学の一分野。文はより小さい単位から成り立つが、その各単位間に見られる文法規則を、何らかの構造論的根拠を持って明示することを目的とする。 精選版 日本国語大辞典 つまりsyntaxとは、文章を作る 規則・文法 のこと。 また「 構文 」の意味は、本来「 文の構造。文章の組み立て 」で「 文の構造の規則=文法 」を意味しないが、 IT関連では「文法」の意味で「構文」と呼ぶ ことが多い。 故に、 syntaxの訳語は、「文法」ではなく「構文」とした 。 resources 恐らく「 HTML文書を記述するのに必要な、DOCTYPEや要素など 」を指すものと思われるが、要は「 第1

【Vol.0】翻訳の方針と目次| Living Standardを読んでHTMLにより詳しくなる!

イメージ
目次 はじめに HTML5が廃止!? 翻訳の方針 13 The HTML syntax 13.1 Writing HTML documents はじめに Web制作をしなくなって早10年。 自身のサイトや知人のサイトの全面更新をせずとも無事にサイトが運用できているのは喜ぶべきことではある。 10年前に構築したサイトは全てXHTMLで書いたものである。 当時はHTML5は世に出て日も浅く、まだブラウザ対応も途上だった記憶がある。 また、スマホやタブレットも普及途上で、考慮外にすることが可能なほどであった。 ただ今となっては、完全に時代に取り残されているのは否めない。 スマホやタブレットは普及し、サイトはスマホやタブレットで見る人の方が多くなり、HTMLもHTML5で書く時代になった。 ということで、スマホやタブレットに対応(所謂レスポンシブ)したサイトにしようという話になり、そうなるとHTML5の勉強しなければ、と相成ったわけである。 HTML5が廃止!? さて、HTML5を勉強しようと思い早速「HTML5」でググったのだが、トップに出てきたのが「HTML5が廃止」である。どういうこと??? 詳細は全面省略して、要はこれまでW3Cで策定していたHTMLの仕様が全て廃止になり、WHATWGが策定していたHTML Living Standardが標準になった、ということらしい。 (経緯を知りたい方は、 どうしてHTML5が廃止されたのか | フューチャー技術ブログ を御覧ください) 翻訳の方針 HTML Living Standard の正式版である 英語版 を読みつつ、 日本語訳版 も参考にする。 原文及び用語を調べた辞書の意味の日本語訳は、 DeepL翻訳ツール にかけ、訳出された内のカタカナ語は、出来る限り漢字語に置き換え、適宜意訳に直していく。 ただし、HTML Living Standardは頻繁に更新されるため、正確な翻訳を目指してもすぐに変更されてしまう可能性があるが、その時点でのものを出来る限り判り易く翻訳していく。 それよりも、 判りづらい原因となる用語の解説や、それを踏まえてどう翻訳したかの解説 に重点を置いていく方針とする。 そのため、 進行がメチャクチャ遅くなる ことを予めご了承いただきたい。

PythonのopenpyxlでExcelの行と列を入れ替えてみた

イメージ
今回のPythonの勉強は、Excelの行と列を入れ替えることをしてみました。 予め、都道府県とその都道府県庁所在地をリスト化したExceを用意し、そのリストの行と列を入れ替えたものを新しい別のシートに作成するというもの。 以下がExcelファイル「Example.xlsx」の中身。 Pythonのコードは以下の通り。 解説はコード内にコメントしてあります。 #openpyxlモジュールを使用する import openpyxl #既存のExcelファイルを開く wb=openpyxl.load_workbook('Example.xlsx') #既存ファイルのシートを指定 sheet1=wb['Sheet1'] #既存ファイルに新規シートをシート名と位置を指定して作成 sheet2=wb.create_sheet(title='Sheet2',index=1) #Sheet1の値のある行数を取得 rw=sheet1.max_row #Sheet1の値のある列数を取得 cl=sheet1.max_column #iは値のある行数分繰り返す #jは値のある列数分繰り返す #range(start,stop)はstart≦i<stopでstopで指定した値は含まないので「+1」している for i in range(1,rw+1): for j in range(1,cl+1): C1=sheet1.cell(row=i,column=j) #sheet1のセルの行番号と列番号を指定している C2=sheet2.cell(row=j,column=i) #sheet1のセルの行番号と列番号を入れ替えてsheet2のセルを指定している C2.value=C1.value #sheet2のセルにsheet1のセルの値を代入 wb.save('Example.xlsx') #上書き保存 結果は以下の通り。 最初のリストの行数は6、列数は2。つまり、 rw=sheet1.max_row=6 cl=sheet1.max_column=2 for文は、 for i in range(1,7): #1≦i<7、つまり1

【まとめ】Pythonのopenpyxlで行うExcelの基本操作

イメージ
Pythonの勉強を再開し、Excelを操作して自動化させるべく色々と進めています。 使用本は、『 退屈なことはPythonにやらせよう〜 』、私が購入したのは 初版第1刷で2017年発刊分 です。 Github の方にある正誤表の中身を本に書き写しておきます。 この本の12章がExcelに関することで、ここを中心に、わからない場合は他の章を参照して進めています。 私の環境は、Ubuntuの公式Docker ImageにPythonやopenpyxl、JupyterLabをインストールして、Pythonの結果が随時確認できるようにしています。詳細は、拙ブログ『 【まとめ】MacでPythonのGUIライブラリが使えるDockerの設定方法 』にまとめています。 マシン:MacBook Pro OS:macOS Catalina(10.15.7) 仮想環境:Docker Desktop エディタ:JupyterLab Python:Ver.3.8.2 openpyxl:Ver.3.0.5 Excelを操作するといいながら、以下の画像はGoogleスプレッドシートです。ファイルは拡張子「.xlsx」で保存すれば、Excelが無くてもPythonで操作が可能で、GoogleスプレッドシートでもOpenOfficeで開きますので確認も可能です。 そんな中、Excelを操作する基本的なコードを備忘録としてまとめました。 #openpyxlモジュールを使用する import openpyxl #新規Excelファイルを開く wb=openpyxl.Workbook() #このExcelを保存する wb.save('example_copy.xlsx') #新規ファイルのシート名を確認する wb.sheetnames #シート名は「Sheet」の1シートのみある状態 #シート「Sheet」を指定する wb['Sheet'] #シート名を取得する wb['Sheet'].title #シート「Sheet」のシート名を変更する wb['Sheet'].title='Example 1' #シート名を確認する