• 締切済み

スプレッドのアクティブセルの値を取得したい

スプレッドでアクティブセルで選択した位置の値を取得したいのですが、どのように記述したらよいでしょう? spr.Col = spr.Activecol spr.Row = spr.ActiveRow ↑セルの位置は取得できているみたい。選んだ値(文字なり、数字)を取得したいのですが。 教えてください。

  • CSS
  • 回答数1
  • ありがとう数10

みんなの回答

  • kimitsjin
  • ベストアンサー率36% (4/11)
回答No.1

EXCEL VBAでいいですか? ActiveCell.Value で取得できます。 または、質問にあるデータを利用して Cells(spr.Row,spr.Col) でもOKのはずです

関連するQ&A

  • GrapeCityのSpreadの複数セルの取得について

    度々、お世話になります。 Spread上で一つのセルが選択されている場合、 .Col = .ActiveCol .Row = .ActiveRow といったコードで選択されている位置を取得 できますが、セルブロックが選択されている場合 .Col1 = .???????? .Row1 = .???????? .Col2 = .???????? .Row2 = .???????? といった形式で選択セルの位置を取得したいと 考えております。 しかし、????????の部分がわからずに困っております。 どうかよろしくお願いいたします。

  • スプレッドについて

    VBも素人なんですが、スプレッドのとり方を教えてください。 以下のスプレッドが既存で存在していてチェックボックスが各行ごとにあるのですが、チェックしたときに呼ばれる関数を以下に書きました。 例えば002という値を取得したいときどうコーディングしたらよいでしょうか?  _____________  | 001 | AAAA |  a   |   |-----|------|----------|     | 002 | BBBB |  b   |  |-----|------|----------|  | 003 | CCCC |  c   |  |-----|------|----------| ※関数の中身は適当です。どうやったらとれるか試行錯誤しています。。。 Private Sub sprService_ButtonClicked(ByVal Col As Long, ByVal Row As Long, ByVal ButtonDown As Integer) Dim intbutton As Integer Col = Row intbutton = ButtonDown sprService.Col = sprService.Row sprService.Col = sprService.Row2 End Sub

  • VBで、開いているExcelシートのアクティブセルの情報を取得

    VBのモジュールで、開いているExcelシート上のアクティブセルの座標、値を 取得するにはどうすればよろしいのでしょうか。まずVBモジュールと参照対象のExcelシートを起動します。次ににExcelシート上のあるセルを選択し、VBモジュールの[セル情報]等のボタンにより、選択されているセルの座標、値をメッセージボックスに表示したいのです。よろしくお願いいたします。

  • アクティブセルと同列の最下段セル選択

    セルの範囲選択のやり方で悩んでいます。 アクティブになっているセルから、それと同列に有る文字・数値が入力された最下段のセルまでを範囲指定したいのです。 その際にセルは結合されている場合と、そうでない場合があります。 取得したセルアドレスは他にも使用したいので、出来る事ならアクティブセルと最下段のセルアドレスを別々に取得してから、その値を使って範囲指定できるようにしたいです。 宜しくお願い致します。

  • 値を一つずつ取得

    以下のような連続したデータがシート「問題1」のA1セル以下に記述されています。 レモン いちご バナナ スイカ                     メロン レモン これらのデータをボタン押下時にコンボボックスに表示できるようにしたいのです。 同様にボタン押下時コンボボックスに表示されたデータをリストボックスにも表示できるようにしたいのです。 ※これらのデータの内容、個数がともに変更されても表示できるようにすること。 データは連続してセルに置かれているため、データの終端は""(何もない文字列)で判断してかまわない。 また、コンボボックスはデータを1つ選択した場合、 リストボックスはデータを1つ選択してダブルクリックされた場合、選択されたものがセルに表示されるようにもしたいのです。 一番わからない点はセルの範囲を決めず一つずつ値を取得し文字が入っていないとわかるまで、一つずつ取得の仕方がどうしても解りません。。。お願いします。

  • スプレッドに値を設定する方法

    VB初心者です。単純な質問で申し訳ありませんが、 以下のスプレッドでcheckBox2にチェックしたとすると 子画面出力します。そのときにチェックが消えてしまいます。そのチェックをつけたままに変更したいです。 オブジェクト名:sprService ______________________ |checkBox1 | 001 | AAAA |  a   |  |----------|-----|------|----------|    |checkBox2 | 002 | BBBB |  b   | |----------|-----|------|----------| |checkBox3 | 003 | CCCC |  c   | |----------|-----|------|----------| 単純にSetTextするのかなと思って書いてみたのですが 思うようにいきません。 Private Sub sprService_ButtonClicked(ByVal Col As Long, ByVal Row As Long, ByVal ButtonDown As Integer) Dim tim If ButtonDown = 1 Then sprService.GetText 1, Row, tim End If 'スプレッドにセット sprService.SetText(1,Row,tim) End Sub わかりにくくてすいません。どなたか教えてください。

  • 値を入力後、自動的にアクティブセルが移動するマクロ

    (1)エクセルファイルを開けたときのアクティブセルを設定。 (2)そのセルに値を入力後、ENTERで違うセルに移動。  (違うセルは、隣接していない) (3)入力後、ENTERでまた違うセルに移動。 (4)数個のセルに入力後は、任意のセルに値を入力できるようにする。 マクロでできることなのかわかりませんが、 よろしくお願いします。

  • ダブルクリックしたセルのフォーカス位置取得

    初めて投稿します。よろしくお願い致します。 Excel上でダブルクリックしたセルの内容を、次のようにしたいと思っています。 ダブルクリックしたフォーカス位置より左側 → 現セルに残す ダブルクリックしたフォーカス位置より右側 → 右側のセルの値の先頭につける 知りたいことは、アクティブセルのフォーカスの位置(左から何文字目か?)を取得できるものでしょうか? ご教授頂ければ幸いです。 以上

  • <新規Bookに アクティブセル領域を 値で貼り付けるマクロ>

    <新規Bookに アクティブセル領域を 値で貼り付けるマクロ> 沢山の様々なデータが入力されている、巨大なExcelファイル(仮に「管理表.xls」)があるのですが ボタンを押すと、アクティブなセル領域(ドラッグで選んだセル領域)を 新規Bookに値で貼り付ける マクロを作成したいのにうまく動きません 下記コードだと、新規Book作成までは出来るのですが、 ペーストがされません。クリップボードにはデータが入るのですが 「管理表.xls」を全て選択された情報が入ってしまっています。 (ペーストすると 全データがペーストされる) マクロは始めたばっかりで ものすごく初心者なので恐縮なのですが ご教授ください。よろしくお願いします。 --------------------------------------- Private Sub CommandButton2_Click() Selection.CurrentRegion.Copy 'アクティブセル領域をコピー Workbooks.Add.Activate 'ブックを新規作成してアクティブに Range("A1").PasteSpecial Paste:=xlPasteValues End Sub ---------------------------------------

  • VBA アクティブセルに対しての作業に関して

    -質問内容-VBA作成2つ- ActiveCell.Offset(RowOffset:=[O1991], Columnoffset:=0).Activate アクティブセルを指定した段階で オフセット(縦下方向にO1991のセルに入れた数値分下に、ヨコに0) 移動しアクティブセルにする ------------------------------------------------------ ------------------------------------------------------ 別々のVBAでやりたいこと (1)これを、アクティブセルを指定した段階で セルの値をコピーして オフセット縦下にO1991.ヨコ0分下にペースト(貼り付け) したい 例)     A    1 成功  ←アクティブセルをコピー   3 成功  ← ActiveCell.Offset(RowOffset:=[O1991], Columnoffset:=0).Activate  アクティブセル~オフセットしたセルまでを最初にアクティブセルからコピーし →アクティブセル~オフセットしたセルまでペーストする ----------------------------------------- (2)これを、アクティブセルを指定した段階で セルの値をコピーして オフセット縦下にO1991.ヨコ0分下に アクティブセル~オフセットされたセル位置まで フィルダウンさせたい 例)     A    1 1 ←アクティブセルをコピー   5  ←オフセットセル 2つのVBAのやり方/プログラムの表記/組み合わせ方を 無知で愚かな私ですが どうかご教授のほど 宜しくお願い致します (>_<)謝↓ペコッ --------------------------------------- --------------------------------------- 変数を使うのでしょうか? セル範囲を指定するとして Range("ActiveCell:ActiveCell.Offset(RowOffset:=[O1991], Columnoffset:=0).Active") となるのでしょうか? 又変数の使い方として Dim a As Range 又は Dim a As Objectになるのでしょうか この際代入として使うには a = ActiveCell b = ActiveCell.Offset(RowOffset:=[O1991], Columnoffset:=0).Activate になるのでしょうか 本当に度々申し訳ないのですが 宜しくお願いします (:>_<:)ペコリ Range(ActiveCell).copy ActiveCell.Offset(RowOffset:=[O1991], Columnoffset:=0)ActiveCell.PasteSpecial End Sub

専門家に質問してみよう