なんでもおきば📒

本やらセミナーやらのまとめなど。

VBAとPython

 

はじめに

VBAユーザーのためのPython超入門”

という本を読んでみました。

 

なぜ読んでみた?

VBAはたまに書いたりしてる程度であまり自分のなかで知識は定着していない。

Pythonは全く知らないけども、たまに技術書読んでるときにPythonがでてくるのでちょっと知っておきたい。

とくにPythonは知ってて損はないのでは?といったところで読んでみました。

 

自分用のメモ

こう書式を比較してみるとほんとPython

変数定義だったり、EndIf簡略して書けるところがよいですね。

以前pythonを使ったコードを試し書きしたときに

なぜ動かなかったところがあったのですが

それはインデントのお作法忘れだったということがわかってよかったです。

 

  VBA Python
コメント入力方法 ' シングルクオーテーション #シャープ
指示構造 If EndIf
aaa= 100
If aaa>= 50 Then
     Debug.Print "xxx"
ElseIf
     Debug.Print "yyy"
Else
     Debug.Print "zzz"
End If
:コロンとインデントでつくる
aaa= 100
if aaa>= 50
     print('xxx') <-インデント大事。
elif
     print('yyy') 
else:
     print('zzz') 
等しくない <> !=
For文 Dim i As Long 

For i= 1 To 5
   Debug.print i
Nest

For i in range(1,6): 

 print(i)

*第1引数の数値から第2引数ー1までの範囲

    

  Dim i As Long 

For i= 1 To 5 Step 2
   Debug.print i
Nest
For i in range(1,6,2):  
     print(i)
Do While Dim i As Long 
i=1
Do Whilei < 6
   Debug.print I
   i = i+1
Loop
i= 1
while I < 6
     print(i)
     i = i+ 1
暗黙の型変換 VBA 5+”2” は計算できる

Python 5+'2'できない 

5+int('2')型変換してあげる必要ある

特定の文字列からはじまってるか txt="abc"
Left(txt,1)="a"
txt="abc"
txt.startswith('a')
配列 Array(1,2,3,4,5) arr = [1,2,3,4,5]
平方根 Sqr(9) import math
math.sqrt(9)
今日の日付 Date import datetime as dt
dt.data.today()