VLOOKUPのような機能をUWSCでも欲しい。

VLOOKUPのような機能をUWSCでも欲しい。
対象はCSVファイル。
VLOOKUP関数は、データを検索し、そのデータに該当した行の指定列からデータを取り出す関数です。

Excelでは非常に多く利用される関数のひとつです。
VLOOKUPに関する詳細な説明は、リンクや『Excel VLOOKUP』などで検索してご確認ください。

前提として、下図のようなCSVデータがあるとします。

概要

ここで説明する関数は、VLOOKUP同様、

  1. 検索文字列(ID)列番号を指定
  2. 検索文字列(ID)を指定
  3. 取得したい列番号を指定

これにより、探し出したいデータを取得できます。
列の内容を把握していれば、IDからデータの取得だけでなく、
逆にデータから行番号(ID)を取得することも可能です。

ただし、毎回ファイル名を指定する点など、
実用的でない点もあるので、業務で利用する際はカスタマイズしてご利用ください。

スクリプト

RETU	= INPUT("半角数字で検索文字列番号を指定してください<#CR>左から1,2・・・")

IFB CHKNUM(RETU) = FALSE
	MSGBOX("数値が入力されていません")
	ExitExit
ENDIF

FPATH	= INPUT("CSVファイルをドラック&ドロップしてください")
FID	= FOPEN(FPATH)

IFB FID = -1
	MSGBOX("ファイルがオープンできません")
	ExitExit
ENDIF

LOOKID		= INPUT("検索文字(ID)を指定してください")

LINECOUNT	= FGET(FID,F_LINECOUNT)	//全行数

GYOU	= 1
WHILE LOOKID <> FGET(FID,GYOU,RETU)
	GYOU	= GYOU + 1
	IFB GYOU > LINECOUNT
		MSGBOX("検索文字列はありません")
		ExitExit
	ENDIF
WEND

NextRETU	= INPUT("半角数字で取得したい列番号を指定してください<#CR>左から1,2・・・")
IFB CHKNUM(NextRETU) = FALSE
	MSGBOX("数値が入力されていません")
	ExitExit
ENDIF

VAL	= FGET(FID,GYOU,NextRETU)

MsgBox(VAL)

解説

ここで1番の肝となるのは、


続きは、ログインもしくは、登録してください



このページの先頭へ