My days of...

生活のことなど、がんばろう

Excelで10年前の日付を自動で計算する

Excelで自動的に10年前の日付を取得する方法。

2021年12月18日の10年前の2011年12月18日ですが、Excelの計算式では

DATE関数を使って、元の日付をバラバラにすれば10年前の日付が取れます。

Excel Date関数

Excel DATE 関数

DATEの中にYEARとMONTH、DAY関数で年月日を登録すれば計算してくれます。10年前なので、YEAR(Q35)-10とすると10年前になります。+10とすると10年後ですね。あと月や日も同様で、DAY()-10 or DAY() +10とすれば10日前、10日後となります。

DATE計算例

Excel Date計算式

和暦も同様に計算してもらえるのは助かります。書式で設定することで、和暦の計算も簡単に対応でした。

和暦のExcel Date関数計算

和暦のDATE結果

 

 

 

MacでVirtualBox+Vagrantを使ってLAMP環境を作る - Apacheのインストールだけ

Mac (Intel) Big Sur にVagrantを使ってLAMP環境を再度設定予定。Dockerを使う方がいいかもだが、VagrantUbuntu 20.04を入れて、今回はApacheをインストールまで。VirtualBoxVagrantはインストール済。

Terminalから

vagrant box add "bento/ubuntu-20.04"

でBox追加。作業するフォルダに移動して

vangrant init "bento/ubuntu-20.04"

でVagrantfileの作成。

vagrant up

これでBoxをダウンロードして、VirtualBox上にUbuntuの環境を作成。完了したら

vagrant ssh

で環境に入っていき、

sudo apt update
sudo apt upgrade

を行って、最新にする。一旦CTRL + Dでログアウトし、Vagrantfileの編集をした。

config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "./www", "/var/www/html", :owner => 'vagrant', :group => 'www-data', :mount_options => ['dmode=755,fmode=755']

この辺を編集(コメントアウトを外したり)、追加して、

vagrant reload

これで更新されたVagrantfileの内容が適用されました。

再度、vagrant ssh で環境内に入り、

sudo apt install -y apache2

としてApacheサーバーをインストール。Mac側からChromeで「http://localhost:8080/」としてアクセスすると

f:id:tako1192:20211029232557p:plain

が表示されたのでとりあえず成功。しかし、IP:192.168.33.10でブラウザでアクセスしたら

f:id:tako1192:20211029232710p:plain

アクセスできず。何か設定が変わったのかな?
ということで、今回はここまで。VagrantVirtualBoxは以前はよく使っていたけど、ちょっと離れたから全然情報がない感じ。LAMPはもう古いとかいう記事が多くて、情報集めるのが大変でした。

 

 

Power AutomateでOneDriveのCSVデータを取得してみた

Power AutomateでCSVを読み込む方法を調べてみた。主に練習のため閲覧させて貰ったサイトはこちら。

blog-tips.sekenkodqx.jp

このサイトで説明されている方法をほぼそのままやりました。所謂写経ってところ。サンプルとして、OneDriveの特定のフォルダに保存したCSVファイルをPower Automateで読む方法の紹介。(Power Automate Desktopではないです)

OneDriveにあるファイルを指定

データを収納する変数を指定

ループでCSVのデータを取り出す

の3段階。

わかりにくいな、と感じたのは、アクション種類の「変数」。

Power Automateアクション「変数」

変数アクションこのアクションは、変数を作成して、その変数に対して初期値を設定・追加するという機能ですが、日本語訳がおかしいのかどうかは知らないけれど、変数の設定と配列変数に追加、文字列変数に追加の意味合いが思っていたものと異なるよう。
そのため、「〇〇に追加」を選択すること、指定した変数に値を入れられずエラーが出てしまい、2〜3時間悩んでました。「変数の指定」を選択すると、エラーなく動きました。

最終的に変数に入れられし、下のように動いたので、とりあえずよかったかも。

Power Automate Flow

情報としては、Googleで「Power Automate」と検索するとPower Automate for Desktopの情報も一緒に出てくることもあって戸惑うことがありますが、少しずつ慣れていきたい。

スクリプトを書いた方が楽なんじゃ。。。と思うこともありましたが、そういうスクリプトを書く方法もあるようなのでこれからの学習次第。

 

 

もう夏休み。どこへ行こう?

2021年7月半ばすぎ。夏休みの季節。これから東京オリンピックが開催されます。4年に1回のオリンピックが1年伸ばされて、2021年開催。ちょっと特別?な年なんでしょうが、例年同様、子供がいらっしゃるところでは、夏休みの自由研究で頭を抱える人も出てくるのでしょう。今時の自由研究をGoogleで検索してみたら、Honda Kidsのページが出てきたので面白そうでみてました。

www.honda.co.jp

焼きそばの色が変わる実験や持てる水の実験など化学な感じのものが紹介されてます。材料も書いてあるので揃えればすぐにできそうなものばかりです。揃えるのは誰だ、という感じですが楽しそうなものが多く見受けられました。

その他、学研やベネッセの教育系の企業でも自由研究が紹介されています。

kids.gakken.co.jp

benesse.jp

www.kodomonokagaku.com

自由研究は、インターネットでヒントを探してそれを少し工夫するとさらに楽しいことができるかも。または、Amazonなどで自由研究そのものを探すのが楽かな。

 

DockerでLAMP環境作成 2021/06

Dockerを使ってLAMP環境の作成の復習(2021年6月)。参考にした資料はこちら

sugumura.github.io

フォルダの構成

lamp(root)
 /db
  conf.d
   my.cnf
 /web
  Dockerfile
 docker-compose.yml

# docker-compose.yml
version: "3.7"
services: 
  web:
    build: 
      context: .
      dockerfile: ./web/Dockerfile
    ports: 
      - 8000:80
    volumes: 
      - .:/var/www/html
  db:
    image: mysql:8.0.17
    restart: always
    # command: --default-authentication-plugin=mysql_native_password #<-- db/conf.dに設定追加のため削除
    environment: 
      - MYSQL_ROOT_PASSWORD=password
      - MYSQL_DATABASE=sample
      - TZ='Asia/Tokyo'
    ports: 
      - 3306:3306
    # volumes - 追加
    volumes: 
      - ./docker/conf.d/my.cnf:/etc/mysql/conf.d/my.cnf
      - data:/var/lib/mysql
  adminer:
    image: adminer
    restart: always
    ports: 
      - 8080:8080
# volumes - 追加
volumes: 
  data:

ApachePHPのDockerfile

# web/Dcokerfile
FROM php:8-apache-buster

# nodeとnpmのインストール
RUN curl -sL https://deb.nodesource.com/setup_10.x | bash -

# Composerで必要なものとMysql、GD利用のパッケージ
RUN apt-get update
RUN apt-get install -y libxml2-dev libbz2-dev zlib1g-dev
RUN apt-get install -y libsqlite3-dev libsqlite3-0 mariadb-client curl exif ftp
RUN apt-get install -y libonig-dev
RUN docker-php-ext-install intl
RUN docker-php-ext-install mysqli pdo pdo_mysql
RUN docker-php-ext-enable mysqli
RUN docker-php-ext-enable pdo
RUN docker-php-ext-enable pdo_mysql
RUN apt-get install -y --fix-missing zip unzip
RUN apt-get install -y --fix-missing git

# Composerのインストール
# RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
COPY --from=composer /usr/bin/composer /usr/bin/composer
RUN composer self-update --2

RUN a2enmod rewrite


EXPOSE 80

MySQL用の設定(my.cnf)

[mysqld]
default_authentication_plugin=mysql_native_password

コンテナを作成して、Webコンテナを立ち上げ

docker-compose build web

    docker-compose up -d

試しにLaravelをインストール

docker-compose exec web composer create-project --prefer-dist laravel/laravel sample

localhost:8000/sample/publicへブラウザでアクセス

Laravel index

Laravel Home

表示されました。

コンテナ内のDebianにComposerをインストールする方法は
1) RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
2) COPY --from=composer /usr/bin/composer /usr/bin/composer
RUN composer self-update --2
1と2はどちらが正解なのだろう・・・?

 

 

Temp Mail 一時的な使い捨てのメールアドレスを手に入れる

一時的なメールアドレスが欲しい場合、Tempmail.orgが使えます。

Temp Mail - 一時的な使い捨て - 匿名のメール (temp-mail.org)

以前見た時は、ドメインがtempmail.comだったような気がしましたが、今は.org を使用したドメインになっている模様。

利用は受信のみで、受信したメールも1〜2時間程度で削除されます。サービスのお試し時、無料のメールが使えない場合などにおすすめ。

 

 

PyenvをAnyenvでインストール

Mac OS 11にPython環境を作成するのにpyenvだった・・・?と言うことでメモ。

今は、Homebrewを利用の際には、anyenvというツールがあるとのことでそれを利用。

brew install anyenv

でanyenvをインストール 

anyenv init
# Load anyenv automatically by adding
# the following to ~/.zshrc:
eval "$(anyenv init -)"

echo 'eval "$(anyenv init -)"' >> ~/.zshrc

これで.zshrcファイルに書き込み

source .zshrc

で適用

ANYENV_DEFINITION_ROOT(/Users/USERNAME/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by: > anyenv install --init

(USERNAME部分は各自の値)と言われるので、
anyenv install --init
を実行。これでインストールが完了。

詳しい情報はこちらを参考にしました。

anyenv install pyenv
/var/folders/jq/kpb4slnn185d4mvtwdr7gwb00000gn/T/pyenv.20210503154646.55006 ~
Cloning https://github.com/pyenv/pyenv.git master to pyenv...
Cloning into 'pyenv'...
remote: Enumerating objects: 19311, done.
remote: Counting objects: 100% (235/235), done.
remote: Compressing objects: 100% (133/133), done.
remote: Total 19311 (delta 109), reused 168 (delta 78), pack-reused 19076
Receiving objects: 100% (19311/19311), 3.93 MiB | 5.61 MiB/s, done.
Resolving deltas: 100% (13036/13036), done.
~

Install pyenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

anyenv install pyenvを実行すればこんな風にインストールされます。
ターミナルを再起動して確認できます。

pyenv --version
pyenv 1.2.27

このようにバージョン表記が出ればインストール成功です。あとは

pyenv install <version>

でインストール。

qiita.com

 

Pythonコードレシピ集

Pythonコードレシピ集

 
入門 Python 3 第2版

入門 Python 3 第2版

  • 作者:Bill Lubanovic
  • 発売日: 2021/03/22
  • メディア: 単行本(ソフトカバー)