Excel VBAã«ãããã¯ãŒã¯ããã¯ã®å®å šãªæäœãšç®¡çãã¯ããã¯
ç§ã¯VBAã®æŽ»çšçµéšãéããŠåŸãç¥èãæŽçããå
±æããç®çã§èšäºãäœæããŠããããã°ã©ãã³ã°æŽ1幎åã«ãªããšã³ãžãã¢ã§ããååã¯ãæååæäœã®äžã§ãç¹ã«äŸ¿å©ãªStrConv
颿°ã«ã€ããŠè©³ãã説æããŸãããä»åã¯ãExcel VBAã«ãããã¯ãŒã¯ããã¯ã®å®å
šãªæäœãšç®¡çãã¯ããã¯ã«ã€ããŠè§£èª¬ããŸããç¹ã«å
±æç°å¢ã§ã®ãã¡ã€ã«æäœæã«çºçããããåé¡ãšãã®è§£æ±ºçã«çŠç¹ãåœãŠãŸãã
- 第1å: Excel VBAã®åºç€ç¥èãšã»ãã¥ãªãã£èšå®
- 第2å: Excel VBAã®åºæ¬æäœãšãªããžã§ã¯ãã®çè§£
- 第3å: Excel VBAã«ããã倿°ãšå®æ°ã®åºæ¬
- 第4å: Excel VBAã«ãããã·ãŒãæäœã®åºæ¬ãšãšã©ãŒåŠç
- 第5å: Excel VBAã«ãããæ¡ä»¶åå²
- 第6å: Excel VBAã«ãããç¹°ãè¿ãåŠçã®åºæ¬
- 第7å: Excel VBAã«ãããé åãšFor Eachã®æŽ»çš
- 第8å: Excel VBAã«ãããFormulaãšValueã®äœ¿ãåããšãŠãŒã¶ãŒå ¥åã®ååŸ
- 第9å: Excel VBAã«ããããã¡ã€ã«æäœãšãã©ã«ã管çã®åºæ¬
- 第10å: Excel VBAã«ãããFileSystemObjectãæŽ»çšããé«åºŠãªãã¡ã€ã«æäœ
- 第11å: Excel VBAã«ãããFileSystemObjectãæŽ»çšããé«åºŠãªãã¡ã€ã«æäœ å¿çšç·š
- 第12å: Excel VBAã«ãããStrConv颿°ã®æŽ»çšãšå¿çšãã¯ããã¯
- 第13å: Excel VBAã«ãããã¯ãŒã¯ããã¯ã®å®å šãªæäœãšç®¡çãã¯ããã¯ïŒæ¬èšäºïŒ
ç®æ¬¡
- ã¯ããã«
- ãã¡ã€ã«å ±æç°å¢ã§ã®èª²é¡
- ã¯ãŒã¯ããã¯ãå®å šã«éã
- ãã¡ã€ã«ãéãããŠãããã®ç¢ºèª
- å®è·µçãªæŽ»çšäŸ
- 泚æç¹ãšå¯ŸåŠæ³
- ãŸãšã
ã¯ããã«
äŒæ¥ãçµç¹ã®ç°å¢ã§ã¯ãè€æ°ã®ãŠãŒã¶ãŒãåãExcelãã¡ã€ã«ã«ã¢ã¯ã»ã¹ããç¶æ³ãé »ç¹ã«çºçããŸãããã®ãããªå ±æç°å¢ã§ã¯ããã¡ã€ã«ããã¯ã®åé¡ãåæç·šéã«ããäžæŽåãæå³ããªãããŒã¿ã®äžæžããªã©ãæ§ã ãªåé¡ãèµ·ããããŸããVBAã䜿çšããããã°ã©ã ã§ã¯ããããã®åé¡ãé©åã«åŠçããããšãéåžžã«éèŠã§ãã
æ¬èšäºã§ã¯ããã¡ã€ã«ãä»ã®ãŠãŒã¶ãŒã«ãã£ãŠäœ¿çšãããŠãããã確èªããå®å šã«ã¯ãŒã¯ããã¯ãéãããã®ææ³ã«ã€ããŠè§£èª¬ããŸãããã®æè¡ãç¿åŸããããšã§ãããå ç¢ã§ä¿¡é Œæ§ã®é«ãVBAã¢ããªã±ãŒã·ã§ã³ã®éçºãå¯èœã«ãªããŸãã
ãã¡ã€ã«å ±æç°å¢ã§ã®èª²é¡
å ±æç°å¢ã§Excelãã¡ã€ã«ãæäœããéã«ã以äžã®ãããªèª²é¡ãçºçããŸãã
- ãã¡ã€ã«ããã¯: ä»ã®ãŠãŒã¶ãŒããã¡ã€ã«ãéããŠããå ŽåãVBAãæžã蟌ã¿ã¢ãŒãã§ãã®ãã¡ã€ã«ãéãããšãããšãšã©ãŒãçºçããŸã
- ããŒã¿ã®äžæŽå: ä»ã®ãŠãŒã¶ãŒãè¡ã£ã倿Žããåæ ãããåã«èªåã®VBAããã°ã©ã ãå®è¡ãããããŒã¿ã®äžæŽåãçããŸã
- åŠçã®äžæ: ãã¡ã€ã«ã«ã¢ã¯ã»ã¹ã§ããªãå ŽåãVBAããã°ã©ã å šäœã®åŠçãäžæãããŸã
ãã¡ã€ã«ãéãããŠãããã®ç¢ºèª
äžèšã®ã³ãŒãã¯ãæå®ããããã¡ã€ã«ãä»ã®ããã»ã¹ã«ãã£ãŠéãããŠãããã©ããã確èªããã«ã¹ã¿ã 颿°ã§ãã
' ãã¡ã€ã«ãéãããŠãããããã§ãã¯ãã颿°
Function IsFileOpen(filePath As String) As Boolean
' ãã¡ã€ã«çªå·ãæ ŒçŽãã倿°
Dim fileNum As Long
' ãšã©ãŒçªå·ãæ ŒçŽãã倿°
Dim errNum As Long
' ãšã©ãŒãçºçããŠãåŠçãç¶è¡ããããã«èšå®
On Error Resume Next
' 䜿çšãããŠããªããã¡ã€ã«çªå·ãååŸïŒVBAããã¡ã€ã«ãèå¥ããããã®çªå·ïŒ
fileNum = FreeFile()
' ãã¡ã€ã«ãæžã蟌ã¿ã¢ãŒãã§éãããšãã
' - For Binary: ãã€ããªã¢ãŒãã§ãã¡ã€ã«ãéãïŒå
容ã«é¢ä¿ãªãçããŒã¿ãšããŠæ±ãïŒ
' - Access Write: æžãèŸŒã¿æš©éãèŠæ±
' - Lock Read Write: èªã¿æžãäž¡æ¹ãããã¯
Open filePath For Binary Access Write Lock Read Write As #fileNum
' ãã¡ã€ã«ãéããïŒéãã®ã«æåããå Žåã®åŠçïŒ
Close #fileNum
' ãšã©ãŒçªå·ãååŸïŒãšã©ãŒããªããã°0ããã¡ã€ã«ã䜿çšäžãªã70ïŒ
errNum = Err.Number
' ãšã©ãŒåŠçãéåžžã¢ãŒãã«æ»ã
On Error GoTo 0
' ãšã©ãŒçªå·70ã¯ãã¢ã¯ã»ã¹æåŠãã§ããã¡ã€ã«ãä»ã®ããã»ã¹ã§äœ¿çšäžãæå³ãã
If errNum = 70 Then
IsFileOpen = True ' ãã¡ã€ã«ã¯éãããŠããç¶æ
Else
IsFileOpen = False ' ãã¡ã€ã«ã¯éãããŠããªãç¶æ
End If
End Function
Functionãšã¯
VBAã«ãããFunctionã¯ãåŠçãè¡ããã®çµæãè¿ãç¬èªã®é¢æ°ãå®çŸ©ããããã®å®£èšã§ããæšæºã§çšæãããŠãã颿°ãšã¯ç°ãªãããŠãŒã¶ãŒãèªåã§äœæããã«ã¹ã¿ã 颿°ã§ãã
Functionã®åŸã«é¢æ°åãåŒæ°ãªã¹ããæ»ãå€ã®åãæå®ãã颿°æ¬äœã®æåŸã« End Function
ãèšè¿°ããŠå®çŸ©ããŸããèªäœé¢æ°ã¯äžåºŠå®çŸ©ããã°äœåºŠã§ãåŒã³åºãããšãã§ããã³ãŒãã®åå©çšæ§ãé«ããéèŠãªèŠçŽ ã§ããããã«ãããåãåŠçãç¹°ãè¿ãèšè¿°ããå¿
èŠããªããªããã³ãŒãã®ä¿å®æ§ãåäžããŸãã
詳ããã¯æ¬¡åã®èšäºã§è§£èª¬ããŸãã
颿°ã®åäœ
-
ãšã©ãŒãã³ããªã³ã°ã®èšå®
On Error Resume Next
ã§ãšã©ãŒãçºçããŠãåŠçãç¶è¡ããããã«èšå®ããŸã -
ãã¡ã€ã«çªå·ã®ååŸ
FreeFile()
颿°ã䜿çšããŠã䜿çšãããŠããªããã¡ã€ã«çªå·ãååŸããŸãFreeFile()ã«ã€ããŠ
FreeFile()
ã¯ã䜿çšãããŠããªããã¡ã€ã«çªå·ãååŸããããã®VBAçµã¿èŸŒã¿é¢æ°ã§ããVBAã§ãã¡ã€ã«ãéãéã¯ããã®ãã¡ã€ã«ã«çªå·ãå²ãåœãŠãå¿ èŠããããŸãããã®é¢æ°ã¯ãçŸåšäœ¿ãããŠããªãçªå·ãèªåçã«èŠã€ããŠè¿ããŠãããŸãã -
ãã¡ã€ã«ãéã詊ã¿
#èšå·ã«ã€ããŠ
ãã¡ã€ã«æäœã§å€æ°åã®åã«ã#ããã€ããã®ã¯ãVBAã®ææ³ã«ãŒã«ã§ãã倿°ãå®çŸ©ããæã¯æ®éã« fileNum ãšæžããŸããããã¡ã€ã«æäœåœä»€ïŒOpen, Close, Print #, Input # ãªã©ïŒã§ãã¡ã€ã«çªå·ãæå®ããæã¯
#fileNum
ãšã#ããã€ããŸãã -
ãã¡ã€ã«ãéãã
ãããã¡ã€ã«ãéãããšãã§ããå Žåãããã«éããŸã -
ãšã©ãŒç¶æ ã®ç¢ºèª
Err.Number
ã§ãšã©ãŒçªå·ãååŸããŸã
- ãšã©ãŒçªå·70ã¯ãã¢ã¯ã»ã¹æåŠããšã©ãŒã§ããã¡ã€ã«ãä»ã®ããã»ã¹ã§äœ¿çšäžã§ããããšãæå³ããŸã
- ä»ã®ãšã©ãŒçªå·ã0ïŒãšã©ãŒãªãïŒã®å Žåã¯ããã¡ã€ã«ã¯äœ¿çšäžã§ãªããšå€æã§ããŸã -
éåžžã®ãšã©ãŒãã³ããªã³ã°ã«æ»ã
On Error GoTo 0
ã§éåžžã®ãšã©ãŒåŠçã¢ãŒãã«æ»ããŸã -
çµæã®è¿åŽ
ãšã©ãŒçªå·ã«åºã¥ããŠããã¡ã€ã«ãéãããŠãããã©ããã瀺ãããŒã«å€ãè¿ããŸã
On Error Resume Nextã®äœ¿çšã«ã€ããŠ
ãã®ã³ãŒãã§ã¯æå³çã«ãšã©ãŒãçºçããããã®ãšã©ãŒçªå·ããã§ãã¯ãããã¯ããã¯ã䜿çšããŠããŸããäžè¬çã«On Error Resume Next
ã®äœ¿çšã¯æšå¥šãããŸãããããã®ãããªç¹å®ã®ç¶æ³ã§ã¯é©åãªäœ¿ç𿹿³ãšèšããŸãããã ããå¿
ãé©åãªç¯å²ã§äœ¿çšããOn Error GoTo 0
ã§éåžžã¢ãŒãã«æ»ãããšãéèŠã§ãã
ã¯ãŒã¯ããã¯ãå®å šã«éã
äžèšã¯ãäžèšã® IsFileOpen
ã«ã¹ã¿ã 颿°ã䜿çšãããã¡ã€ã«ãä»ã§éãããŠããªãæã ããå®å
šã«Excelãã¡ã€ã«ãèªã¿åãå°çšã§éããŠè¿ã颿°ã§ãã
' ãã¡ã€ã«ãã¹ãåãåããå®å
šã«ããã¯ãéããŠã¯ãŒã¯ããã¯ãªããžã§ã¯ããè¿ã颿°
' ãã¡ã€ã«ãä»ã®ããã»ã¹ã§äœ¿çšäžã®å Žåã¯Nothingãè¿ããŸã
Function OpenBookSafely(ByVal filePath As String) As Workbook
' ãã¡ã€ã«ãéãããŠãããã®çåœå€ãæ ŒçŽãã倿°
Dim fileIsOpen As Boolean
' ãã¡ã€ã«ãä»ã®ãŠãŒã¶ãŒã«ãã£ãŠéãããŠããããã§ãã¯
' ããã§ã«ã¹ã¿ã 颿°ã䜿çš
fileIsOpen = IsFileOpen(filePath)
If fileIsOpen Then
' ãã¡ã€ã«ã䜿çšäžã®å Žåãæ»ãå€ãNothingã«èšå®
Set OpenBookSafely = Nothing
Else
' ãã¡ã€ã«ã䜿çšäžã§ãªãå Žåãèªã¿åãå°çšã§éããã¯ãŒã¯ããã¯ãªããžã§ã¯ããè¿ã
Set OpenBookSafely = Workbooks.Open(filePath, ReadOnly:=True)
End If
End Function
颿°ã®åäœ
-
åæèšå®
ãŸããæ»ãå€ã®ããã©ã«ããšããŠNothing
ãèšå®ããŸããããã¯éèŠãªããã°ã©ãã³ã°ææ³ã§ã颿°å ã§äœããã®åé¡ãçºçããå Žåã«æç¢ºãªãå€ãªããç¶æ ãè¿ããããã«ããŸã -
䜿çšç¶æ ã®ç¢ºèª
IsFileOpen
颿°ïŒåè¿°ïŒã䜿çšããŠããã¡ã€ã«ãä»ã®ãŠãŒã¶ãŒã«ãã£ãŠéãããŠãããããã§ãã¯ããŸã -
æ¡ä»¶åå²åŠç
-
ãã¡ã€ã«ã䜿çšäžã®å Žå
-
Nothing
ãè¿ããŸã
-
-
ãã¡ã€ã«ã䜿çšå¯èœãªå Žå
-
Workbooks.Open
ã¡ãœããã䜿çšããŠãã¡ã€ã«ãéããŸã - éèŠãªãã€ã³ããšããŠã
ReadOnly:=True
ãã©ã¡ãŒã¿ãèšå®ããŠèªã¿åãå°çšã§éããŸã - éããã¯ãŒã¯ããã¯ãªããžã§ã¯ãã颿°ã®æ»ãå€ãšããŠè¿ããŸã
-
-
å®è·µçãªæŽ»çšäŸ
ãããã®é¢æ°ãå®éã®VBAãããžã§ã¯ãã§ã©ã®ããã«æŽ»çšã§ããããããã€ãã®äŸãèŠãŠã¿ãŸãããã
äŸ1: ããŒã¿ã®äžæ¬éèš
è€æ°ã®Excelãã¡ã€ã«ããããŒã¿ãéèšãããã¯ãã®äŸã§ãã
' è€æ°ã®ãã¡ã€ã«ããããŒã¿ãéèš
Sub CollectDataFromMultipleFiles()
Dim folderPath As String
Dim fileName As String
Dim targetBook As Workbook
Dim summarySheet As Worksheet
Dim currentRow As Long
' éèšçµæãæ ŒçŽããã·ãŒããèšå®
Set summarySheet = ThisWorkbook.Worksheets("Summary")
currentRow = 2 ' ããããŒè¡ã®æ¬¡ããéå§
' ããŒã¿ãã¡ã€ã«ã®ãããã©ã«ããã¹
folderPath = "C:\Data\Reports\"
' ãã©ã«ãå
ã®æåã®Excelãã¡ã€ã«ãæ€çŽ¢
fileName = Dir(folderPath & "*.xlsx")
' ãã©ã«ãå
ã®ãã¹ãŠã®Excelãã¡ã€ã«ãåŠç
While fileName <> ""
' å®å
šã«ããã¯ãéã
Set targetBook = OpenBookSafely(folderPath & fileName)
' ããã¯ãæ£åžžã«éããå Žåã®ã¿åŠçãå®è¡
If Not targetBook Is Nothing Then
' ããŒã¿ã®æœåºãšéèšåŠç
With targetBook.Worksheets(1) ' æåã®ã·ãŒããæ³å®
' äŸïŒå£²äžããŒã¿ãéèš
summarySheet.Cells(currentRow, 1) = fileName
summarySheet.Cells(currentRow, 2) = .Range("B5").Value ' æ¥ä»
summarySheet.Cells(currentRow, 3) = .Range("D10").Value ' 売äžåèš
currentRow = currentRow + 1
End With
' ããã¯ãéããïŒå€æŽãä¿åããªãïŒ
targetBook.Close SaveChanges:=False
End If
' 次ã®ãã¡ã€ã«ãååŸ
fileName = Dir()
Wend
' åŠçå®äºã¡ãã»ãŒãž
MsgBox "ããŒã¿ã®éèšãå®äºããŸããã", vbInformation, "åŠçå®äº"
End Sub
äŸ2: ãã¹ã¿ãŒãã¡ã€ã«ã®æŽæ°ç¢ºèª
ãã¹ã¿ãŒããŒã¿ãã¡ã€ã«ãæŽæ°å¯èœãã確èªããŠããåŠçãè¡ãäŸã§ãã
' ãã¹ã¿ãŒãã¡ã€ã«ãæŽæ°
Sub UpdateMasterFile()
Dim masterFilePath As String
Dim masterBook As Workbook
Dim sourceData As Variant
' ãã¹ã¿ãŒãã¡ã€ã«ã®ãã¹
masterFilePath = "\\server\shared\MasterData.xlsx"
' çŽæ¥ãã¡ã€ã«ãéãããŠãããããã§ãã¯
If IsFileOpen(masterFilePath) Then
' ãã¡ã€ã«ã䜿çšäžã®å Žå
MsgBox "ãã¹ã¿ãŒãã¡ã€ã«ã¯çŸåšä»ã®ãŠãŒã¶ãŒã«ãã£ãŠäœ¿çšãããŠããŸãã" & vbCrLf & _
"ãã°ããåŸ
ã£ãŠããå詊è¡ããŠãã ããã", vbExclamation, "æŽæ°äžå¯"
Exit Sub
End If
' ãã®æç¹ã§ãã¡ã€ã«ã¯äœ¿çšãããŠããªãããšã確èªã§ããã®ã§ã
' èªã¿åãå°çšã§ã¯ãªãæžã蟌ã¿ã¢ãŒãã§éã
Set masterBook = Workbooks.Open(masterFilePath, ReadOnly:=False)
' ããŒã¿ã®æŽæ°åŠç
' ïŒãã®äŸã§ã¯ç°¡åãªåŠçãæ³å®ïŒ
sourceData = ThisWorkbook.Worksheets("NewData").Range("A1:D100").Value
masterBook.Worksheets("Data").Range("A1").Resize(UBound(sourceData, 1), UBound(sourceData, 2)).Value = sourceData
' 倿Žãä¿åããŠãã¹ã¿ãŒããã¯ãéãã
masterBook.Save
masterBook.Close
' åŠçå®äºã¡ãã»ãŒãž
MsgBox "ãã¹ã¿ãŒãã¡ã€ã«ã®æŽæ°ãå®äºããŸããã", vbInformation, "åŠçå®äº"
End Sub
äŸ3: æ¡ä»¶ã«ãã£ãŠã¢ãŒããåãæ¿ãã
ãã¡ã€ã«ã®ç¶æ ã«å¿ããŠèªã¿åã/æžã蟌ã¿ã¢ãŒããåãæ¿ããé«åºŠãªäŸã§ãã
' ãã¡ã€ã«ã®ç¶æ
ã«å¿ããŠæé©ãªã¢ãŒãã§ã¯ãŒã¯ããã¯ãéã颿°
Function OpenWorkbookWithOptimalMode(ByVal filePath As String, _
Optional forceReadOnly As Boolean = False) As Workbook
Dim isInUse As Boolean
Dim userResponse As VbMsgBoxResult
' æ»ãå€ãããã©ã«ãã§Nothingã«èšå®
Set OpenWorkbookWithOptimalMode = Nothing
' ãã¡ã€ã«ãååšããã確èª
If Dir(filePath) = "" Then
MsgBox "æå®ããããã¡ã€ã«ãèŠã€ãããŸãã: " & filePath, vbExclamation, "ãã¡ã€ã«ãšã©ãŒ"
Exit Function
End If
' ãã¡ã€ã«ã䜿çšäžããã§ãã¯
isInUse = IsFileOpen(filePath)
' 匷å¶çã«èªã¿åãå°çšã¢ãŒããæå®ãããŠããå Žå
If forceReadOnly Then
Set OpenWorkbookWithOptimalMode = Workbooks.Open(filePath, ReadOnly:=True)
Exit Function
End If
' ãã¡ã€ã«ã®ç¶æ
ã«å¿ããåŠç
If isInUse Then
' ãã¡ã€ã«ã䜿çšäžã®å ŽåããŠãŒã¶ãŒã«ç¢ºèª
userResponse = MsgBox("ãã¡ã€ã«ã¯ä»ã®ãŠãŒã¶ãŒã«ãã£ãŠäœ¿çšãããŠããŸãã" & vbCrLf & _
"èªã¿åãå°çšã¢ãŒãã§éããŸããïŒ", _
vbQuestion + vbYesNo, "ãã¡ã€ã«ã¢ã¯ã»ã¹")
If userResponse = vbYes Then
' èªã¿åãå°çšã¢ãŒãã§éã
Set OpenWorkbookWithOptimalMode = Workbooks.Open(filePath, ReadOnly:=True)
Else
' ãã£ã³ã»ã«ïŒäœãããªãïŒ
MsgBox "åŠçããã£ã³ã»ã«ããŸããã", vbInformation, "ãã£ã³ã»ã«"
End If
Else
' ãã¡ã€ã«ã䜿çšãããŠããªãå Žåãæžã蟌ã¿ã¢ãŒãã§éã
Set OpenWorkbookWithOptimalMode = Workbooks.Open(filePath, ReadOnly:=False)
End If
End Function
泚æç¹
ãã®æ¹æ³ã§ã¯100%確å®ã«ä»ãŠãŒã¶ãŒã«ãã䜿çšç¶æ³ãåãããšã¯éããŸããããããã¯ãŒã¯å ±æã®èšå®ããã¡ã€ã«ã·ã¹ãã ã®ä»æ§ã«ãã£ãŠã¯ãæ£ç¢ºã«æ€åºã§ããªãã±ãŒã¹ããããŸãããã確å®ãªæ¹æ³ãå¿ èŠãªå Žåã¯ãWindows APIãFileSystemObjectã®å©çšãå¿ èŠãšãªãå¯èœæ§ããããŸãã
ãŸãšã
ã¯ãŒã¯ããã¯ã®å®å šãªæäœãšç®¡çã¯ãExcel VBAã䜿çšããæ¥åã¢ããªã±ãŒã·ã§ã³éçºã«ãããŠéåžžã«éèŠãªèŠçŽ ã§ãããã®èšäºã§ã¯ãä»ã®ãŠãŒã¶ãŒããã¡ã€ã«ã䜿çšããŠããéã®ãã©ãã«ãæªç¶ã«é²ãæ¹æ³ãšããŠããã¡ã€ã«ã®ããã¯ç¶æ³ç¢ºèªãå®å šãªã¯ãŒã¯ããã¯ã®éãæ¹ã«é¢ããåºæ¬çãªãã¯ããã¯ã詳ãã解説ããŸããããããã®æè¡ãç¿åŸããããšã§ãæ¥åå¹çãå€§å¹ ã«åäžãããããå ç¢ã§ä¿¡é Œæ§ã®é«ãVBAã¢ããªã±ãŒã·ã§ã³ã®éçºãå¯èœã«ãªããŸãã
ãããã®ã¯ãŒã¯ããã¯æäœãã¯ããã¯ãã以åã«è§£èª¬ããæ¡ä»¶åå²ãç¹°ãè¿ãåŠçãé åãFileSystemObjectãªã©ãšçµã¿åãããããšã§ãããé«åºŠã§å®çšçãªExcel VBAã¢ããªã±ãŒã·ã§ã³ãéçºããããšãã§ããŸããäŸãã°ã瀟å ã®è€æ°ã®ã¯ãŒã¯ããã¯ããããŒã¿ãå®å šã«éèšãããããã¹ã¿ãŒããŒã¿ã確å®ã«æŽæ°ããããšãã£ãè€éãªæ¥ååŠçããä»å玹ä»ããæè¡ãçµã¿åãããããšã§å®çŸå¯èœã§ãã
ããèšäºã®å 容ã§äžæãªç¹ãããã詳ããç¥ãããéšåããããŸããããã³ã¡ã³ãã§ãç¥ãããã ããããŸããå®åã§ã®ã¯ãŒã¯ããã¯æäœã®æŽ»çšäŸããããå¹ççãªå®è£ æ¹æ³ãªã©ãçæ§ã®ããŠããŠããã²å ±æããŠããã ããã°å¹žãã§ãã
次åã®èšäºã§ã¯ãExcel VBAã«ãããFunctionïŒé¢æ°ïŒã®äœæãšæŽ»çšã«ã€ããŠè§£èª¬ããŸããèªäœé¢æ°ã䜿ãããšã§ãã³ãŒãã®åå©çšæ§ãé«ããããå¹ççãªããã°ã©ãã³ã°ãå®çŸã§ããæ¹æ³ãåŠãã§ãããŸãããããã²ãæåŸ ãã ããïŒ