• ベストアンサー

EXCEL VBAでセルに入力した内容を確認する方法について

セルA1に =1234 や = ABCD と入力し、セルの書式を変更せず、VBAでそのまま「 =1234 や =ABCD 」として取り出すにはどのようにすればよいのでしょうか。 Cell(A1).Value や Cell(A1).Text では 1234 や #NAME? などとなってしまいました。 過去ログでも探してみたのですが見つかりませんでした。 宜しくお願いします。

  • syea
  • お礼率100% (1/1)

質問者が選んだベストアンサー

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

Cell(A1).Formula

syea
質問者

お礼

素早い回答ありがとうございます。 無事取得できました。

関連するQ&A

  • VBA セルに入力されている数値でセルを指定する

    Excel VBA初心者です。 Sheet1のA1セルに10、A2セルに3を入力しています。 この入力したセルの数値を参照して、 Sheet2の「Cells(10,3)」(C10セル)を青(Interior.ColorIndex = 5)に 書式変更したいのですが、「Cells(”Sheet1.A1の値”,”Sheet1.A2の値”)」の 書き方がわかりません。 Excel2010を使用しています。 よろしくお願いします。

  • エクセルVBA セルの書式につい

    ユーザーフォームのテキストボックスに入力した日付(yyyy/mm/ddの形式)をA1セルに入れるとします。  Range("A1").Value = Me.txt日付 A1セルの表示形式は書式設定でユーザー定義の"d"で表示されるように設定していますが、 テキストボックスに入力した形式のまま(yyyy/mm/dd)でA1セルに表示されてしまいます。 上記のみではNGでしょうか? ちなみに、yyyy/mm/ddと入力されたA1セルを一旦編集モード([F2]キーを押した状態)にして[Enter]を押すと"d"(書式設定で指定している書式)に変わります。 参考:A1セルの日付をみて別シートの一覧からVlookup関数で値を検索したいところが、yyyy/mm/ddで表示されるためにエラーとなってしまいます) ご存知の方教えていただきたいです。

  • エクセルVBA 結合されたセルの内容を消去させる方法

    こんにちは、いつもお世話になっています。 結合されたセルの入力内容を消去したいです。(書式などはそのまま) 現在 Range("A9").ClearContents となっているのですが、実行してみると 「実行エラー1004 結合されたセルの一部を変更することはできません」 と出てしまいます。 何かいい方法はあるでしょうか。

  • VBAでのセルの参照

    VBAであるセルの値をCSV出力にしようしたいと思っています。 対象セルが、ただ値のみが入っているセルならば問題ないのですが、式が入っているセルですと上手くできません。 詳細は以下のとおり セルA1:8.25  セルA2:8.80   セルA3:=A1-A2 (画面には-0.55と表示)で 変数=Cells(3,1).Valueと言った形で、A3の値を変数に受け取ろうとしています。 すると変数には入るべき値の近似値(-0.54999999・・) が入ります。 すべてのセルの書式は数値で、少数第2位までに設定されており、決して上記以外の値が入っていることはありません。 何故、このような現象が起こり、またどうすれば解決できるのでしょう? ちなみに変数=Cells(3,1).Textにすると正しい値(-0.55)が入ります。 .Valueと.Textの違いも教えていただけるとあり難いです。 宜しくお願いします。

  • excel VBAの構文の内容を訳してくださいませ!

    すいません、まったくマクロやVBA関係は、だめで、、 上司が、どこかのサイトで見つけた操作をやってみようと思ったら 下記の内容をVisual Basic Editorを開いて、 ThisWorkbookに下記のコードを入力して、さらに条件付書式をすると セルを選択すると、その行が自動的にハイライトになるしく。。 私には、よくわからない世界になってきたような。。 すんません、またまたお願いします! 『入力するコード内容』 Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.ScreenUpdating = True End Sub そして、条件付書式より ”数式が”を選択して=CELL("row")=ROW()を入力します。 ⇒ごめんなさいです。  どこで、探してきたのか、わかりませんが、詳細をテキストにして  送付されてきました。すみません。  内容を説明できないでいます。  

  • エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセル

    エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセルの条件によって「値」のみ残す方法を模索しております。 使用する列および行の例 列=A、B  行=5~10、15~20、25~30(A列、B列共通) 上記対象セルの内訳 A列(参照セル)=数値 ※空欄の場合もあります B列(変更セル)=数式(Aセル数値 * ○○%) ※B1セルの例:=IF(A1="","",A1*10%) のような数式が記入されております。 (例) Private Sub CommandButton1_Click() ’参照セルの指定 ("A5:A10","A15:A20","A25:A30") のようなコード*** ※現在はAセルの範囲としておりますが、後に変更の可能性を有しますので範囲指定が可能な形式を望みます。 ’変更セルの指定 セル指定のコード*** ※現在はBセルとしておりますが、これも後に変更の可能性を有しますのでA・B・Cのような入力(もしくはA=1、B=2、C=3)による指定可能な形式を望みます。 ’参照セル(Aセル)に数値が入力されている場合、数式から得られた変更セル(Bセル)の値を”値のみ”で残す。 実行コード*** ※参照セル(Aセル)が空欄の場合は変更を望まないので、変更セル(Bセル)は何も致しません。(数式のまま残す) End Sub このようなマクロを望んでおります。 イメージとしては数値がAセルに入力されていた際に同じ行のBセルにおいて右クリックコマンド内〔コピー〕 → 〔形式を選択して貼り付け〕 → 〔値〕の貼り付けを行うことをご想像下さい。 列や行の変更が予想されるので変更が可能なことを望んでおりますが、結果が伴えば他の体裁は気に致しません。 お手数ですがご教授宜しくお願い致します。 以上

  • Excel VBAでは可でユーザーは入力不可のセル

    C5のセルはユーザーが入力できて、 C5セルに入力された値に応じてVBAで C7セルに処理した値を表示させたいのですが、 C7のセルはユーザーは入力(選択)できないようにしたいのです。 具体的には、 C5セルの書式設定の保護タブのロックを解除して ホームタブのセルグループの書式▼でシートの保護を選択して 表示される「シートの保護」のダイアログで デフォルトのままOKボタンをクリックすると C5セルのみ入力できて C5セル以外は入力できなくなります。 ユーザーにはこの状態にしておきたいのですが、 VBAでC7セルに入力できるようにする方法はないでしょうか。 (Windos7, Excel2010)

  • 【VBA】条件を満たしたセルを塗り潰し

    VBAで下記のようにしたいのですが、どのようにすれば良いでしょうか?      A 1    100 2    110 3    120 4    130 5    140 6    150 7    160 8    170 9    180 【条件】この場合、A1:A9の範囲内でB1の値を超える値が入力されているセルを黄色で塗りつぶす ※前提として、B1に150と入力されているとします 上記のようなVBAを作成したいと思っています。 この場合、塗りつぶしの対象となるセルはA7,A8,A9となります。 条件付き書式で対応できるのですが、Excel2007で作成したファイルをExcel2003で開くと条件付き書式が反映しませんでしたので、VBAで対応しようと思いました。 宜しくお願いします。

  • エクセル VBAで入力

     エクセル初心者です。 条件付き書式で一つのセルに特定の文字列を入力した際に、そのセルと任意の法則性のある複数のセルに(入力内容は無関係でセルの行・列に法則性があります)特定の塗りつぶしを行いたいのですが、どのようにすればよいのでしょうか。 条件付き書式をすべて設定する(手打ち)するのが最も確実で間違いの内方法ではありますが、新規に行・列を挿入した場合、その行・列には条件付き書式が設定されていませんので、意図した作用を起こさなくなってしまいます。 上記ではよくわからないと思いますので、具体的な例を入れさせていただきます。 例)) 任意のセル(A13)に特定の文字列(OK)と入力する。 特定文字列に反応して、そのセルの列に(A12からE12、F12からH12)赤色の塗りつぶしを入れる。 上記は1セルに対して行われますが、VBAを使用してA12からA5000までを検索対象として持たせて、それぞれのセルの列に対して塗りつぶしを入れられるようにしたいと思っています。

  • エクセルVBAでセルに色を付けるには

    エクセル2010の質問です。 例えばA列に入力した文字のバイト数が38より多い場合、セルに色を付けたいのです。 条件付き書式で =LENB($A2:$A1048576)>38 でもよかったのですが シート内のデータをクリアすると条件付き書式までクリアされてしまい困っています。 VBAで出来るのが一番なのかなと思っていますが、ご教授お願い致します。

専門家に質問してみよう