に投稿 コメントを残す

MacBook Air (13-inch, Mid 2011)整備済み製品(中古)を購入して初めてしたこと

こんにちは。しんやです。

MacBook Airを購入(13-inch, Mid 2011)整備済み製品(中古)を購入したので、初めてしたことを纏めます。

フリーランスエンジニアやそれを目指してプログラミング学習している人で、「Mac使いたいけど高いなぁ」という人はぜひこの記事を読んで整備済み製品を検討してみてください。

1. OSのアップグレード
2. McAfeeのインストール
3. Sublime textのインストール
4. Visual Studio Code(VS Code)のインストール

  1. OSのアップグレード

MacBook Air 2011だと最新のOSであるBig Surには対応していません

最終対応のオペレーティングシステムはmacOS High Sierra 10.13.6だと分かりますので、こちらをダウンロードしてインストールします。


2. McAfeeをインストール

セキュリテイソフトは必要なので、すでに契約していてWindowsやAndroidスマホにインストールしているMcAfeeを入れることにしました。

McAfeeにログインして自分宛てにメールを送信し、リンクにしたがってダウンロード、インストールします。


3. Sublime textをインストール

ここからは、プログラミング学習やシステム開発で便利なツールをインストールします。

まずは、Sublime text


4. Visual Studio Code (VS Code)をインストール

次に、Visual Studio Codeをインストールします。これで一通り開発ができる状況になりました。


10年前の整備済みMacBook Airでどれだけサクサクプログラミングできるかは試してみないと分からないので、実験結果は分かり次第お知らせします。


ではまた。

に投稿 コメントを残す

【GAS】Google Apps Scriptでうるう年判定と日数判定を行う方法【カレンダー作成】

カレンダーの画像

こんにちは。しんやです。

GAS(Google Apps Script)でうるう年判定と日数判定をしながらカレンダー作成するコードを書いたので共有します。

職場で勤怠シートを作成することを想定して開発しました。

function myFunction() {

  Logger.log('*** myFunction Start ***');

  //スプレッドシートAppを呼び出し
  var ss = SpreadsheetApp.getActiveSpreadsheet();

  Logger.log('ss:'+ ss);

  //アクティブセルを取得
  var myCell = ss.getActiveCell();

  Logger.log('myCell:' + myCell);
  Logger.log('myCell.getRow():' + myCell.getRow());

  //「年」または「月」が変更されたとき
  if(myCell.getRow()==1 || myCell.getRow()==2) {
  
    //呼び出し
    createCallendar(ss);
  }
  Logger.log('*** myFunction End ***');
}

function createCallendar(ss) {

  Logger.log('*** createCallendar() Start ***');

  //年を取得
  var year = ss.getRange("A1").getValue();
  
  //うるう年判定
  var uruFlg = false;
  if (year % 4 == 0) {
    uruFlg = true;
  } else if (year % 400 == 0) {
    uruFlg = true;
  } else if (year % 100 == 0) {
    uruFlg = false;
  }

  Logger.log('year: ' + year);

  //月を取得
  var month = ss.getRange("A2").getValue();

  Logger.log('month:' + month);

  //日数判定しセット
  var lastDate;
  switch (month) {
    case 1:
    case 3:
    case 5:
    case 7: 
    case 8:
    case 10:
    case 12:
      lastDate = 31;
      break;
    case 4:
    case 6:
    case 9:
    case 11:
      lastDate = 30;
      break;
    case 2:
      lastDate = 28;
      break;
  }

  //うるう年の2月のとき、29日までセット
  if (uruFlg == true && month == 2) {
    lastDate = 29;
  }

  Logger.log('lastDate:' + lastDate);

  //タイトル行をセット
  var titleRow = 7;

  //日にちを消去
  ss.getActiveSheet().getRange("A8:A38").clearContent();

  //日にちを入力
  for (var i = titleRow + 1; i <= titleRow + lastDate; i++) {
    ss.getActiveSheet().getRange(i, 1).setValue(i - titleRow);
  }

  Logger.log('*** createCallendar() End ***');

}

以下の処理を実現するのに苦労したので、開発メモとしてたくさんの人に参考にしていただけると嬉しいです。

  • アクティブなスプレッドシートの取得(ファイルとしてアクティブなスプレッドシートの取得)
  • アクティブシートの取得(ワークシートとしてアクティブなシート)
  • アクティブシートの取得(ワークシートとしてアクティブなシート)
  • Switch文で複数条件が真のときの書き方
  • Switch文で複数条件が真のときの書き方

ではまた。

【募集】
初心者限定で、メンターとしてプログラミングを教えます。
ぜひ、チェックしてください。
①時間単位:https://www.timeticket.jp/items/122081/
②1ヶ月単位:https://www.timeticket.jp/items/122104/


【詳細】
プログラミングのメンターについて詳しくは公式LINEまで。
LINEの友だちになると、簡単にメッセージが送れます。
お気軽にお問い合わせください。