VBAIfステートメントの環境変数を使用してExcelでセル値を取得するにはどうすればよいですか

Morkai_bde

EGのスプレッドシートが2つあります。test1.xlxsおよびtest2.xlsm

test1のシート1セルB6には、次のデータがあります。testdata

test2には、test1が存在しないか、間違った情報が含まれている場合に無効にしたいvbaコードがいくつかあります。そのため、VBA IFステートメントで環境変数を使用して、コードを編集したり、再編集したりする必要がないようにする必要があります。新しいPCに移動するたびにシートをリンクします

私が抱えている問題は、環境変数を使用する場合、Ifステートメントがセル値ではなく文字列に対してテストすることですEG "= C:\ users \ username \ documents [test.xlxs] Sheet1 '!$ B $ 6"代わりにtestdata

これは私が現在test2に持っているコードです:

Sub Check_Key()
Dim Key As String
Key = "='" & Environ("USERPROFILE") & "\Documents\[test.xlxs]Sheet1'!$B$6"
If Key = Sheet1.Range("D8") = True Then
        Sheet1.Range("D9") = "Valid"
    Else
        Sheet1.Range("D9") = "Invalid"
    End If
End Sub

それを機能させる方法はありますか?ブックのセル内のifステートメントではなく、VBAスクリプトで検証を実行することをお勧めします。

要件:ユーザーはtest1のデータを表示できないようにする必要があります(スプレッドシートは閉じたままにする必要があります)test1のデータはVBA IFステートメントで検証する必要がありますtest2はPCのどこにでも配置でき、test1はドキュメントに含まれている必要があります

スプレッドシートへのリンクは次のとおりです。これには、ライセンスファイル、テストシート、およびキージェネレータドキュメントが含まれています。

ソースコード

次のコードは、閉じたブックからセルB6の値をコピーします。

Sub test()

'variables
Dim key As Variant, FolderName As String, wbName As String

FolderName = Environ("USERPROFILE") & "\Documents"

wbName = Dir(FolderName & "\" & "test.xlsx") 'Workbook name

key = GetInfoFromClosedFile(FolderName, wbName, "Sheet1", "B6")

End Sub

'Returns value in cell CREDIT: http://erlandsendata.no/?p=2106
Private Function GetInfoFromClosedFile(ByVal wbPath As String, wbName As String, wsName As String, cellRef As String) As Variant
Dim arg As String
    GetInfoFromClosedFile = vbNullString
    If Right(wbPath, 1) <> "\" Then wbPath = wbPath & "\"
    If Dir(wbPath & wbName) = vbNullString Then Exit Function
    arg = "'" & wbPath & "[" & wbName & "]" & wsName & "'!" & Range(cellRef).Address(True, True, xlR1C1)
    'On Error Resume Next
    GetInfoFromClosedFile = ExecuteExcel4Macro(arg)
End Function

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Power QueryのSELECTステートメントでExcelセル値を変数として使用するにはどうすればよいですか?

分類Dev

Excel / VBA マクロ内から環境変数を使用して Python インストールにパスするにはどうすればよいですか?

分類Dev

環境変数を使用してインストールのホームフォルダを変更するにはどうすればよいですか?

分類Dev

Kubernetesステートフルセット環境変数を介してPostgresqlmax_connections構成を変更するにはどうすればよいですか?

分類Dev

PortAudioを使用するための環境をインストールしてセットアップするにはどうすればよいですか?

分類Dev

Springでjunitテストを使用してjndi環境変数を取得するにはどうすればよいですか?

分類Dev

Excel VBA:For Eachステートメントでセル値の変更を使用するにはどうすればよいですか?

分類Dev

Dockerビルドプロセスで環境変数を使用してスクリプトを調達するにはどうすればよいですか?

分類Dev

Jenkinsのメール通知で環境変数を取得するにはどうすればよいですか?

分類Dev

環境変数の値を取得して出力するにはどうすればよいですか?

分類Dev

if elseステートメントを使用して変数の値を変更するにはどうすればよいですか?

分類Dev

switch()ステートメントを使用して、数値から文字のグレードに変換するにはどうすればよいですか?

分類Dev

パラメータとしてコンテキストを使用して関数の戻り値を取得するにはどうすればよいですか?

分類Dev

ifおよびforステートメントを使用して値を文字から数値に変更するにはどうすればよいですか?

分類Dev

ServerlessFrameworkを使用してAWSLambda関数環境変数を介してSSMパラメーターストア値にアクセスするにはどうすればよいですか?

分類Dev

Dockerfileシェルスクリプトの.envファイルから環境変数値を取得するにはどうすればよいですか?

分類Dev

ifステートメントを使用してrの2つの変数をインクリメントするにはどうすればよいですか?

分類Dev

IntelliJで、新しいテスト構成のデフォルトの環境変数を設定するにはどうすればよいですか?

分類Dev

clionでリモートモードを使用しているときに、リモートホスト上のスクリプトから環境変数を取得するにはどうすればよいですか?

分類Dev

実稼働環境でbundleを使用して追加のgemをインストールするにはどうすればよいですか?

分類Dev

ルートの永続的な環境変数を設定するにはどうすればよいですか?

分類Dev

ルートの永続的な環境変数を設定するにはどうすればよいですか?

分類Dev

returnステートメントを使用してJavaのforループから複数の値を返すにはどうすればよいですか?

分類Dev

文字列の配列をコンテキストファイルの環境パラメータ/変数として定義するにはどうすればよいですか?

分類Dev

@PropertySource値の一部としてシステム環境変数を使用するにはどうすればよいですか?

分類Dev

netcore3.1の環境変数によってKestrel(AspNetCore)リスニングポートを変更するにはどうすればよいですか?

分類Dev

私のJava環境変数は完全に混乱しているようですが、再インストールせずにクリーンスタートを行うにはどうすればよいですか?

分類Dev

SQL Serverのwhileループでselectステートメントを使用してレコードを取得するにはどうすればよいですか?

分類Dev

.then((){});の外でこの変数の値を取得するにはどうすればよいですか。フラッターのステートメント?

Related 関連記事

  1. 1

    Power QueryのSELECTステートメントでExcelセル値を変数として使用するにはどうすればよいですか?

  2. 2

    Excel / VBA マクロ内から環境変数を使用して Python インストールにパスするにはどうすればよいですか?

  3. 3

    環境変数を使用してインストールのホームフォルダを変更するにはどうすればよいですか?

  4. 4

    Kubernetesステートフルセット環境変数を介してPostgresqlmax_connections構成を変更するにはどうすればよいですか?

  5. 5

    PortAudioを使用するための環境をインストールしてセットアップするにはどうすればよいですか?

  6. 6

    Springでjunitテストを使用してjndi環境変数を取得するにはどうすればよいですか?

  7. 7

    Excel VBA:For Eachステートメントでセル値の変更を使用するにはどうすればよいですか?

  8. 8

    Dockerビルドプロセスで環境変数を使用してスクリプトを調達するにはどうすればよいですか?

  9. 9

    Jenkinsのメール通知で環境変数を取得するにはどうすればよいですか?

  10. 10

    環境変数の値を取得して出力するにはどうすればよいですか?

  11. 11

    if elseステートメントを使用して変数の値を変更するにはどうすればよいですか?

  12. 12

    switch()ステートメントを使用して、数値から文字のグレードに変換するにはどうすればよいですか?

  13. 13

    パラメータとしてコンテキストを使用して関数の戻り値を取得するにはどうすればよいですか?

  14. 14

    ifおよびforステートメントを使用して値を文字から数値に変更するにはどうすればよいですか?

  15. 15

    ServerlessFrameworkを使用してAWSLambda関数環境変数を介してSSMパラメーターストア値にアクセスするにはどうすればよいですか?

  16. 16

    Dockerfileシェルスクリプトの.envファイルから環境変数値を取得するにはどうすればよいですか?

  17. 17

    ifステートメントを使用してrの2つの変数をインクリメントするにはどうすればよいですか?

  18. 18

    IntelliJで、新しいテスト構成のデフォルトの環境変数を設定するにはどうすればよいですか?

  19. 19

    clionでリモートモードを使用しているときに、リモートホスト上のスクリプトから環境変数を取得するにはどうすればよいですか?

  20. 20

    実稼働環境でbundleを使用して追加のgemをインストールするにはどうすればよいですか?

  21. 21

    ルートの永続的な環境変数を設定するにはどうすればよいですか?

  22. 22

    ルートの永続的な環境変数を設定するにはどうすればよいですか?

  23. 23

    returnステートメントを使用してJavaのforループから複数の値を返すにはどうすればよいですか?

  24. 24

    文字列の配列をコンテキストファイルの環境パラメータ/変数として定義するにはどうすればよいですか?

  25. 25

    @PropertySource値の一部としてシステム環境変数を使用するにはどうすればよいですか?

  26. 26

    netcore3.1の環境変数によってKestrel(AspNetCore)リスニングポートを変更するにはどうすればよいですか?

  27. 27

    私のJava環境変数は完全に混乱しているようですが、再インストールせずにクリーンスタートを行うにはどうすればよいですか?

  28. 28

    SQL Serverのwhileループでselectステートメントを使用してレコードを取得するにはどうすればよいですか?

  29. 29

    .then((){});の外でこの変数の値を取得するにはどうすればよいですか。フラッターのステートメント?

ホットタグ

アーカイブ