アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBAについての質問です。

VBAで次の事ができるコードを作ることはできますか?
・EXCELに記入してある項目とデータを、必要な項目とデータだけ抽出し、適切な値や文字に変換してCSV形式で出力する。
(EXCELのデータは変
えず、抽出・変換した結果をCSV出力する)

・EXCEL内の列が変わっても、決まった形(決まった項目の並びに順、データ出力場所)でCSV出力されるようにする。

・EXCEL内のデータの行数は毎回変わるので、その都度対象範囲をすべて認識して、CSV出力される。
(表示されているデータの行数全てCSV出力されるようにする。先述の通り列はCSV出力される際に必要なところだけ抽出されるようにする)

●参照先:EXCEL
以下の通り、各セルに項目名が入っており、それぞれの項目名の列には適切なデータが出力されております。

●出力形式:CSV形式
必要なデータをEXCELから抽出し、適切な値や文字に変換して出力したいと考えてます。

●例

【見方】
・入力されているセル:EXCELデータ→項目名を入力するセル:CSV出力するときに変換した時の項目名
・文頭に※があるものには計算式が入力されています。


A1セル:インシデント→出力なし
B1セル:作業内容→出力なし
C1セル:施設ID→B1セル:FACT_ID
(C2セル以降に入力されている値を、そのままB2以降のセルに転記)
D1セル:施設名(日)→C1セル:COMP_NM
(D2セル以降に入力されている値を、そのままC2以降のセルに転記)
E1セル:責任者(苗)→D1セル:LAST_NM_EN、F1セル→LAST_NM_LOCAL
(E2セル以降に入力されている値を、そのままD2、F2以降のセルに転記)
F1セル:責任者(名)→E1セル:FIRST_NM_EN、G1セル→FIRST_NM_LOCAL
(F2セル以降に入力されている値(漢字かローマ字)を、そのままE2、G2以降のセルに転記)
G1セル:施設区分→L1セル:KYOTEN_CODE、P1セル:DEPA_KB
(G2以降に記入されている値を、L2とP2以降に0_AA→0.1_BB→1.2_CC→2に変換して入力、)
H1セル:国名→I1セル:LAND_CODE
(H2セル以降に入力されている値を、そのままI2以降のセルに入力)
I1セル;拠点区分→H1セル:FACT_KB
(I2セル以降に入力されている値を、H2以降のセルに0_AA→0.1_BB→1.2_CC→2に変換して入力)
J1セル:登録申請日→J1セル:REG_APPLE_DT
(J2セル以降に入力されている値を、そのままJ2以降のセルに入力)
K1セル:削除申請日→A1セル:IMPORT_TYPE(削除:0,1:追加)、K1セル:DEL_APPLE_DT
(K2セル以降、空白→0、それ以外→1をA2セルに出力する(フラグを立てる?)。K2セル以降に入力されている値を、そのままK2以降のセルに入力)
L1セル:備考→Q1セル:REMAKES
(L2セル以降に入力されている値(全角平仮名カタカナ漢字、半角英数字入り混じり)を、そのままQ2以降のセルに入力)
M1セル:ADJ→M1セル:ADJ_SOFT_DEV_FLG
(M2セル以降に入力されている値を、そのままM2以降のセルに入力。空白の場合は0を入力)
N1セル:PRINT→N1セル:PRINT_KB
(N2セル以降に入力されている値を、そのままN2以降のセルに入力。空白の場合は0を入力)
O1セル:AUTH→O1セル:AUTH_KB
(O2セル以降に入力されている値を、そのままO2以降のセルに入力。空白の場合は0を入力)
※P1セル:PS(OU)→出力無し
※Q1セル→PS(G)→出力無し


以上になります。
解りづらく長い文で大変申し訳ございませんが、
切実に回答を求めておりますため、どうかどなたかお知恵を貸してください。
宜しくお願い致します。

A 回答 (2件)

No1です。



読み直したら、誤記がありましたので訂正しておきます。
(内容的に変わりはありませんが…)

◇誤
>必要な項目とデータだけ
>必要な項目とデータだけ

◇正
>必要な項目とデータだけ
>適切な値や文字に変換して
    • good
    • 1

こんにちは



>次の事ができるコードを作ることはできますか?
ご質問文に曖昧な記述がありますが・・

>必要な項目とデータだけ
>必要な項目とデータだけ
>決まった形
などの内容がよくわかりませんけれど、これらを論理的に説明可能であれば(=コード化が可能である論理性)基本的に可能と考えられます。

ご自分で作成なさるのであれば、不明部分はご自身で判断できるので問題はありません。
一方で、「まるっと作って」というつもりなのであれば、回答者に必要な情報を整理して伝えることができなければ無理です。
仮に、キチンと伝えられたとしても、「作ってあげよう」という奇特な方がいないと、やはり無理ですね。

内容をよく読んではいませんが、なにやら複雑そうなので、依頼サイト等で依頼する方が速いのではないかという気がします。
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!