Excelのマクロについてです。プログラミングなんていう大層なカテゴリではないのですが・・・
複数枚あるシート(枚数はランダム)で、左端のSheet1に検索キーワードが入っています。
右側のシート群には上記キーワードがちりばめられており、これらを視覚的に目立たせるマクロを考えています。
つまりSheet1のある範囲(具体的にはE6以下、データが存在する位置までの範囲)に並んだ文字を左のシート群で検索し、引っかかったセルに色をつけたいのですが、下記のマクロでは開始位置(E6)のセルしか見てくれません。
また、検索結果として赤くしたいのはSheet2以降の対象セルなのですが、どうしてもSheet1のセルも赤くなってしまいます。
つまり下記VBAを実行すると、Sheet1.E6の「りんご」の文字を使ってすべてのシートを検索し、Sheet1を含むすべてのシートで「りんご」の文字が入ったセルが赤くなります。
ループを仕込んでいるにもかかわらず「みかん」の文字は赤くなりません。
どこでポカをやっているのでしょうか?

シート関数でしたらそれなりに使えるのですがマクロはなかなか理解しづらく・・・
なにとぞヒントをいただけませんか?

<状況>
最初のシートはE6より縦に
 E6 りんご
 E7 みかん
 ・ 
 ・
 ・
と並び、右のシート(数枚)に、ランダムにその文字が入力されています。書式はバラバラです。
<目標>
最初のシートのある範囲(E6以下)にある文字がSheet2以降で見つかった場合、そのセルを赤く、文字を白くしたい。
以下は自分で作ってみたへぼへぼマクロです:

Sub セルに色付け()

Dim SearchCount As Integer
Dim SearchLineID
Dim WS As Worksheet

Set WS = ActiveSheet  '後で現在のSheetに戻ってくるため

SearchCount = Range("E6").CurrentRegion.Rows.Count  'E6から下に読んでいこうとしています

For i = 1 To SearchCount

SearchLineID = Cells(i + 5, 5).Value  'E6から始めるための補正です

For n = 2 To Sheets.Count  'シートの数を取得し、2枚目から検索を行う意図です

With Application.ReplaceFormat.Font
.Subscript = False
.ColorIndex = 2
End With
Application.ReplaceFormat.Interior.ColorIndex = 3

Sheets(n).Select
Range("A6:AF512").Select    'とりあえずこの範囲を検索
Selection.Replace What:=SearchLineID, Replacement:=SearchLineID, LookAt:= _
xlWhole, SearchOrder:=xlByRows, ReplaceFormat:=True

Next n
Next i
WS.Activate

End Sub

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんな感じかな?



Sub セルに色付け()
Dim SearchCount As Integer
Dim SearchLineID
Dim WS As Worksheet
Dim c As Range
Dim firstAddress As String
Set WS = ActiveSheet '後で現在のSheetに戻ってくるため
For i = 6 To Worksheets(1).Range("E65536").End(xlUp).Row
SearchLineID = Worksheets(1).Cells(i, 5).Value
For n = 2 To Worksheets.Count 'シートの数を取得し、2枚目から検索を行う意図です
With Worksheets(n).Cells
Set c = .Find(SearchLineID, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Interior.ColorIndex = 3
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
Next n
Next i
WS.Activate
End Sub

よく分かってないので
うまく処理しなければパスしてね
    • good
    • 0
この回答へのお礼

ありがとうございます。
即効性という点ではこのままマクロを仕込めたので大変助かりました。皆さんに20ptを差し上げられないのが非常に心苦しいです。
マクロをはじめて間もないのですが正解がひとつではなく、それぞれが美しくて大変興味深いです。

お礼日時:2009/05/19 03:59

>ループを仕込んでいるにもかかわらず「みかん」の文字は赤くなりません。


>どこでポカをやっているのでしょうか?
最初の『りんご』のLoop検索で
Sheets(n).Select
とやってますから、最終シートがアクティブになっています。
次に『みかん』を置換しようとして
SearchLineID = Cells(i + 5, 5).Value
とやっても、Cells(i + 5, 5)はアクティブなシートのCellsですから、
最終シートの E7セルのValueをセットしているわけです。

置換のLoopで各シートをSelectせずに置換すれば、
Set WS = ActiveSheet

WS.Activate
も必要ありません。

こんな感じ。
Sub try()
  Dim SearchCount As Integer
  Dim SearchLineID
  Dim i As Long
  Dim n As Long

  SearchCount = Range("E6").CurrentRegion.Rows.Count 'E6から下に読んでいこうとしています
  With Application.ReplaceFormat
    With .Font
      .Subscript = False
      .ColorIndex = 2
    End With
    .Interior.ColorIndex = 3
  End With
  Cells.Find "" '●
  For i = 1 To SearchCount
    SearchLineID = Cells(i + 5, 5).Value      'E6から始めるための補正です
    For n = 2 To Sheets.Count           'シートの数を取得し、2枚目から検索を行う意図です
      Sheets(n).Range("A6:AF512").Replace What:=SearchLineID, _
                        Replacement:=SearchLineID, _
                        LookAt:=xlWhole, _
                        SearchOrder:=xlByRows, _
                        ReplaceFormat:=True
    Next n
  Next i
End Sub

私だったら、こんな風にするかも。
Sub try2()
  Dim SearchLineID
  Dim r As Range
  Dim n As Long
  
  With Application.ReplaceFormat
    With .Font
      .Subscript = False
      .ColorIndex = 2
    End With
    .Interior.ColorIndex = 3
  End With
  Cells.Find "" '●
  With Sheets(1)
    For Each r In .Range("E6", .Range("E6").End(xlDown))
      If r.Value = "" Then Exit For
      For n = 2 To Sheets.Count
        Sheets(n).Range("A6:AF512").Replace What:=r.Value, _
                          Replacement:=r.Value, _
                          LookAt:=xlWhole, _
                          SearchOrder:=xlByRows, _
                          ReplaceFormat:=True
      Next n
    Next
  End With
End Sub

いずれにしても、
>また、検索結果として赤くしたいのはSheet2以降の対象セルなのですが、
>どうしてもSheet1のセルも赤くなってしまいます。
この対策が必要です。

推測ですが、検索置換オプションの[検索場所]が[ブック]になっていませんか?
http://oshiete1.goo.ne.jp/qa4952579.html
その場合
Sheets(n).Range("A6:AF512")...と置換対象範囲を指定しても、ブック全体が対象になってしまいます。
Excelを再起動して実行してみてください。
現状のコードでも、少なくともSheets(1)の『りんご』が紅くなる事はないでしょう。

VBAコードでの回避策は、『置換』の前に空検索でもいいのでFindメソッドを実行する事です。
Cells.Find ""
これで[検索場所]を[シート]にリセットできます。

#余談ですが、逆に[検索場所]を[ブック]にする手段はVBAでは用意されていません。

#すみません、長々と書いてたら既出回答と一部ダブってしまいましたm(_ _)m
#後半の[検索場所]対策のほうを参考にしてみてください。
    • good
    • 0
この回答へのお礼

いやはや、そのとおり検索対象を「ブック」にしていました。
マクロを記録する際、ActiveSheetのむこうまで置換したいという思いからですが
どうも挙動が思い通りにいかなかったのはそれも原因でしょうか。
さらに検証してみたいと思います。なかなか時間が取れませんが・・・

皆様の回答がそれぞれ違う切り口なので大変勉強になります。
詳細な説明、ありがとうございました。
ポイントを差し上げられず申し訳ございません。

お礼日時:2009/05/19 04:02

まず、CurrentRegionで行数を取っていますが、F列に他の文字などが(長く)はいっているとE列の最終行にはなりません。


(これは大した問題でもないけれど…)

>ループを仕込んでいるにもかかわらず「みかん」の文字は赤くなりません
>どこでポカをやっているのでしょうか?
2回目のループで
>SearchLineID = Cells(i + 5, 5).Value
が実行されるときに、表示されているシートはもとのシートではないので、そのシートのE7などが参照されているはず。
(そこに何か値があれば、それと合ったセルが赤くなっているはずです)
(↑)これが、思うように動作しない原因と思われます。
 SearchLineID = WS.Cells(i + 5, 5).Value
などのようにシートを明示してあげれば、一応予定通りになると思います。

また、置換後のフォーマットの定義などは、ループの回数繰り返す必要がないので(毎回同じなので)、こういったものはループの外に出しておいたほうが良いでしょう。

使用条件等不明ですが、要旨だけでいけば、こんな感じでよいのかも。
(各シートのCells(=全セル)を対象にしています。)
Sub test()
Dim sht As Integer, rw As Long, v
Worksheets(1).Activate
Application.ReplaceFormat.Interior.ColorIndex = 3
Application.ReplaceFormat.Font.ColorIndex = 2

For rw = 6 To Cells(Rows.Count, 5).End(xlUp).Row
 v = Cells(rw, 5).Value
 If v <> "" Then
  For sht = 2 To Worksheets.Count
   Worksheets(sht).Cells.Replace What:=v, Replacement:=v, _
   LookAt:=xlWhole, ReplaceFormat:=True
  Next sht
 End If
Next rw
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。
こんな時間までマクロ書いてます・・・
>(そこに何か値があれば、それと合ったセルが赤くなっているはずです)
はい。そのとおりでした。これが直らず半泣きだったところにアドバイスを頂き
途中までは仕込むことができました。
しかし頂いた文を理解するのにもうしばらくかかり、その間に上記の方の文を頂いて
それで一応の解決を見ました。
(今は皆様から頂いた分の意味がある程度分かるようになりました)
これからもマクロとは付き合ってゆくことになりそうなので、もっと論理的思考を磨きたいと思います。

お礼日時:2009/05/19 04:15

長々と自分のコードを挙げて、読者に読ませるの。

それよリ
1例でよいから具体的にシートの一部の実例を挙げて、セル番地と内容を挙げて、コウだからコウしたいと説明してくれた方がありがたい。マクロの記録で置換操作をしてかんげれば、焦点がもっと狭まるのに。
(1)Sheets(1)のA列(他列に散りばめて無いだろうね)のキーワードの把握繰り返し。最終行の補足のコードなど必要。
(2)Sheet(2)意右のシートの繰り返し。For Each Next
これらをネストする。(2)が外側。
ーー
(1)の1つのキーワードで行うことは、
編集ー置換
検索する文字列  キーワード
置換する文字列  キーワード
オプションで書式(セルパターンやフォント色)を設定
に当たる捜査のマクロの記録をとる。質問のコードはそれに基づいたものかな。
マクロの記録では
Sub Macro1()
Range("A2:C15").Select
Application.ReplaceFormat.Interior.ColorIndex = 6
Selection.Replace What:="a", Replacement:="a", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=True
End Sub
変えるところといったらRange("A2:C15").Selectの部分だけ。
Sub test02()
For Each sh In Worksheets
If sh.Index <> 1 Then
MsgBox sh.Name
End If
Next
End Sub
のShをつけて各シートの範囲を記述する。範囲がどういう類型(同一か)か質問に書いてない。
==
やってみると、置換は
=A3のように、文字列を参照しているとその参照しているセルでは、ヒットしないことだ。セルの値で検索してくれるパラメーターは無いのかな。関係ないかな。
これが小生の誤解でなければ、対象全セル総なめで値をチェックしないとならないが。
一番左のタブのシートと言うのも不安定と思う。
    • good
    • 0
この回答へのお礼

厳しいご意見、身にしみます。全文添削しろといわんばかりのベタ貼りについてはお恥ずかしい限りです。
お察しのとおり、主導でマクロを記録したものを切り貼りしたため
変数の型やループの原理も怪しいものでした。いや、怪しいものです。
さらに式としての見栄えもヘボくお見苦しいところをご覧に入れてしまいました。
本当は皆さんにポイントを差し上げたいところですが
ピンポイントで回答をいただいた上記の方に20ptを差し上げ、
imogasi様にはその慮りから10ptとさせていただきました。
ありがとうございました。

お礼日時:2009/05/19 04:11

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QMy wife walked home to find..........

回答者の皆様、あけけましておめでとうございます。
旧年中は大変お世話になりました。今年もどうぞよろしくお願いいたします。

NHKラジオ英会話講座より
My wife called home in a panic,and I rushed over on my bicyle to begin the search. My wife walked home to find my daughter there.
・・省略・・。妻が家に戻ると、そこに娘がいたんだ。

(質問)[My wife walked home to find my daughter there.]についてお尋ねします。
(1)[to find]は不定詞の形容詞的用法(~すべき)でしょうか?
(2)私が直訳すると「妻はそこに娘を見つけるために家に歩いた。」となり、何か変な文章になります。「・・娘がそこにいた」というフィーリンングがつかめません。テキストの訳文を、分り易く直訳し、解説していただけませんか?よろしくお願いいたします。 以上

Aベストアンサー

Gです。 何の正月雰囲気もないところから、明けましておめでとうございます。

フィーリングがなかなか感じられないとおっしゃっていましたね。 今回もそうなんですね。 でも、感じたい、と思っておられるようなので書いてみる事にしました。

Thank youと言われたときとかありがとうと言いたいときにこの表現のフィーリングをちゃんと身につけていますね。

理由は何であろうと、その表現のフィーリングとは何なのかを学校で教えてくれたのですね。 無駄な事を教え込まされないうちに、この表現はありがとうと言う意味だよ、と言われてそのフィーリングを感じ始めたわけです。 

つまり、フィーリングを感じろ、と教えてくれれば感じることが出来るのです。

でも、教えてくれないで(教えられる先生がいるか否かは別問題として)フィーリングを感じることは難しい事ですよね。 思いもよらない事をしようとしたいわけですから。 なぜならそれ自体が英語力となるわけですから時間が架かってしまうのです。 時間がかかるからできるだけ早くこのフィーリングをつかんで自分が持っているフィーリングを表現できるように勉強の仕方を帰ると言うか追加しなくてはならない、と言う事なのです。

しかし、日本ではいまだに、文法さえ知っていれば、専門用語で説明されれば納得してしまうと言う状況があるのですね。

これが、今回の「フィーリングをつかむ事が難しい」と言うことになってしまう理由があるのです。

どんな学校文法項目なのかお分かりでしょうか。

まさにこの、不定詞の理解、なのです。 不定詞に関する説明から作られてしまう理解、だと言う事です。

ではその壁になっている説明とは、と言うと、

不定詞には3つの「用法」がある。

その用法とは名詞用法、形容詞用法、そして副詞用法。

それらは「~する事」「~する為の」そして「~する為に」です。

この文章の不定詞は副詞用法ですから、、、、、、と言う説明方法

と言う4段階に分けた教え方なのです。

そしてこの説明では充分ではないと気がつくと、また分類して、副詞用法の~です、として不十分さをカバーしようとするわけです。 そして、その用法名を知っていると意味がわかった気分になるわけですね。 なぜなら、その説明では、このxx用法ですから~のように訳します、となるからですね。

じゃ、どうやって「見極めるの?」と言う前にその見極め方を教えてくれないのです。 なぜ教えてくれないのでしょう。 私は使えるように教えてくれないと言う証明だと言うわけです。

ここからが私なりの回答となります。

My wife walked home to find my daughter there.とMy wife walked home to find the lost key.との「用法の違いに何かある」と感じてくれましたか?

それを理解するにはfindと言う単語のフィーリングを感じて欲しいのです。(意味と言うことですが)

キーはfind my daught thereとfind the lost keyですね。 ここで、前文に「文章」のフィーリングがあるけど後文にはそれがない、と感じてくれましたか?

後文は単なる単語群ですね。 名詞です。 なくした鍵を、ですね。 ですから、このこのfindは「見つける」と言う意味のfindなのですね。 findの意味は私の説明がなくても分かりますね。

前文のほうが難しいと思います。 でも、my daughter therと言う表現が文章的だと言うことに気がつくと、~が~であることが、となりますね、そうすると、このfindは物体を見つけるのではなく、である事が分かる、と言うフィーリングのfindだと分かるようになりますね。

その例が、I found my girldfriend so thoughtful.と言う文章と同じフィーリング表現方法と同じじゃないか、と言うことになるわけです。 つまり、カノジョが大変思いやりがあると「分かった」と言うフィーリングになりますね。 I found my girldfriend is so thoughtful.と同じでmy girlfriend is so thoughtfulと言う分のフィーリング(文節)が隠れているわけです。

~が~である、と言う部分がmy daughter thereなのです。 俗に言うSVOCと言うことになります(私には関係ない知識ですが)。

この解釈による理解で終わってはならないのです。 この理解を「応用する」事が直接このMy wife walked home to find my daughter there.の、歩いて帰ったらそこに娘さんがいた、と言うフィーリングになる「知識」が身に付くのです。

つまり、見つけると言うフィーリングが感じる文章では「見つけるために」と言うフィーリングを出せる表現方法として使われるのですが、わかると言うフィーリングが感じる文章では「~したら分かる」と言うフィーリングを表せる表現方法が使われたと感じるわけですね。

自分に身につけるための練習です。

My wife walked home to find my daughter playing.
My wife walked home to find my daughter with her boyfriend.
My wife walked home to find my daughter
My wife walked home to find my daughter's dog.

これだけでどっちを意味するかもうお分かりですね。

そうすると、findのフィーリングによって意味合いが代わってくる、と言うことになりますね。 

しかし、この知識を使いこなせるようになるにはもう一つの知識を持つべきと言う事を知っておいてください。

それは、findの「分かる」「知る」と言うフィーリングを表す時に、~かどうかを知る、と言う表現方法がありますね。 find if xxx is xxxと言う表現です。

この文節が来た時にはto findの意味合いが~する為にと言うフィーリングが出てくるので、My wife walked home to find if my daughter would be there.と言う表現であれば、そこにいるかどうかを「知るために」家に徒歩で行った、と言うフィーリングになるわけです。

歩いていったらそこのいるかどうかを知った、とはならないわけです。My wife walked home to find if my daughter would be there.の文章ではそこにいたと言うフィーリングは出ていないのですね。

そして、最後にフィーリングの複雑さがどうしても表現方法に二十見出てしまうことさえあるのです。

My wife walked home to find my daughter there.の文章では、歩いて帰った、と言う事と、そこにいた、と言うこととは何も因果関係と言うものを感じさせませんね。

しかし、因果関係があるとしたらどうなるのでしょうか。 ここが要点にもなるのです。

My wife rushed home to find my daughter there.と言う文章では、なぜrush homeなのかを感じ取る事が出来ますね。 娘がそこにいるかどうかを知るために急いだ、そこにいるのを知るために急いだ、と言う関係が成立するわけです。 (わざと混乱させる為にfindの意味を変えているのに気がつきましたか?) この説明で終わっていたら突っ込んでもらいたかったのです。<g>

そこにいるのを知るために、ではないですね。 そこで見つけるために、と言う意味ですよね。 

つまり、ここでも、見つけると言うフィーリングでのfindを使っているのです。 rush to findだからこそ、今回のwalk to findとは違うフィーリングとなるわけです。 

チャレンジした教え方をしてごめんなさい、でも、なぜそうしたのか分かってください。

少しずつフィーリングをつかめるように勉強してください。 フィーリングをつかめるようにはなれないと言う事は今のところ誰にも起こっていません。 でも、つかめるようにしなければ決してつかめるように名ならないし、フィーリングをつかめる実力がなければ表現力を高める事は難しいと言うことになってしまうわけですね。

最後のチャレンジです。

My wife walked home to find my daughter there.妻が家に戻ると、そこに娘がいたんだ、が分かったら、今度は、妻が家に戻るとそこに娘がいたんだ、と言う文章をMy wife walked home to find my daughter there.と言う英文で書けるように努力してください。

この段階にチャレンジしなければ、妻が家に戻るとそこに娘がいたんだ、と言う文章を見たら、今回の表現方法ではなくほかの文章を作ってしまうことになるのです。

参考になりましたでしょうか。 お分かりにくいところがありましたら締め切る前にまた書いてくださいね。

Gです。 何の正月雰囲気もないところから、明けましておめでとうございます。

フィーリングがなかなか感じられないとおっしゃっていましたね。 今回もそうなんですね。 でも、感じたい、と思っておられるようなので書いてみる事にしました。

Thank youと言われたときとかありがとうと言いたいときにこの表現のフィーリングをちゃんと身につけていますね。

理由は何であろうと、その表現のフィーリングとは何なのかを学校で教えてくれたのですね。 無駄な事を教え込まされないうちに、この表現はあり...続きを読む

Q条件に当てはまるセルにColorIndex = 4の色をつけたい。

よろしくお願いします。

Excel2003にて製作したシート1のA列(縦方向)に数字の「1」がランダ

ムに数カ所はいっているのですが、「1」がはいっているセルに

ColorIndex = 4をつけたいのです。「1」の位置はA列のなかで毎日数カ

所とも移動します。

関数ではなくVBAコードにておたずねしたいと思います。

回答お願いします。

Aベストアンサー

>シート1のA列(縦方向)に数字の「1」がランダムにある

ということなら、色付け云々の前に、質問者の提示したコードでは
上手くいかないような。。。。(^^;;;
(A列がソートしてあれば別)
それに、何をしたいのかがコードからはいまいち読み取れない。

ま、それは置いといて質問の件。

一度に色を付けずに処理をしながら色付けするなら、
以下の●のところに1行追加するだけでいいでしょう。

'-----------------------------------------------

Do While (Sheet1.Cells(i, 2).Value <> "")
If (Sheet1.Cells(i, 1).Value = 1) Then

●●これを追加
  Sheet1.Cells(i,1).Interior.ColorIndex = 4

Select Case j Mod 3
Case 1
  以下、略
'------------------------------------------

それから、老婆ながら一言いわせてもらうと、
変数名の付けかたに問題があります。
Sheet1,Sheet2というのはシートのオブジェクト名ですから
mySheet1とかmySheet2とか別な名前にしましょう。

以上。
 

>シート1のA列(縦方向)に数字の「1」がランダムにある

ということなら、色付け云々の前に、質問者の提示したコードでは
上手くいかないような。。。。(^^;;;
(A列がソートしてあれば別)
それに、何をしたいのかがコードからはいまいち読み取れない。

ま、それは置いといて質問の件。

一度に色を付けずに処理をしながら色付けするなら、
以下の●のところに1行追加するだけでいいでしょう。

'-----------------------------------------------

Do While (Sheet1.Cells(i, 2).Value <> "")...続きを読む

Qデスクトップに【My Mobile V2】と出てきて困っています。

パソコンを立ち上げると、毎回デスクトップに【My Mobile V2】関連?の
画面(小窓)が表れるんです。
どうしてその表示が出るのか覚えが無いんですね。
家族の者も覚えがないと言います。
質問とは、この表示を表示されないようにしたいのです。

ではまず、どういう表示(小窓)か説明しますと。
         ↓

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
【Windowsインストーラ】

インストールの準備中・・・

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

【My Mobile V2】

WindowsにMy Mobile V2を設定しています。
しばらくお待ちください。

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
「キャンセル」をクリックすると↓
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

【My Mobile V2】

取り消し中・・・・


・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
「キャンセル」をクリックしなかったら↓
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
選択した機能は現在使用できないネットワークリソースにあります。
(OK)をクリックして実行するか、インストールパッケージ
”My Mobile V2 msi”を含むフォルダに対する代替パスを以下の
ボックスに入力します。
<ソースを使用>・・・・


・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
これをキャンセルすると↓
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
製品My Mobile V2に対する正式なソースが見つかりません。
このインストレーションパッケージ"My Mobile V2 msi"の正規の
コピーを使用して、再度インストールを実行してください。



ここで{×}をクリックして閉じます。

これはもしかしたら、何かをダウンロードしたときのものなんだろうか・・なんて
思ったりもしますが、見当がつきません。
家族全員、パソコンには初心者なので、消し方もよくわからないんです。

毎回パソコンを開くたびに、この【My Mobile V2】の小窓をいちいち消す
作業をしなければならず、面倒で困っています。

パソコンは、東芝 QosmioF40 Windows Vista
1台を家族4人で使ってます。

初心者で、説明不足ですが、どなたかアドバイスをよろしくお願いいたします。

パソコンを立ち上げると、毎回デスクトップに【My Mobile V2】関連?の
画面(小窓)が表れるんです。
どうしてその表示が出るのか覚えが無いんですね。
家族の者も覚えがないと言います。
質問とは、この表示を表示されないようにしたいのです。

ではまず、どういう表示(小窓)か説明しますと。
         ↓

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
【Windowsインストーラ】

インストールの準備中・・・

・・・・・・・・・・・・・・・・・...続きを読む

Aベストアンサー

>そのインストールを途中で終了させてしまったから・・・とも考えられますよね?

そのとうりです。
インストール操作を最後まで、してください。
携帯に付属していたCDをドライブに入れてやれば、続行しますから。

スタートから、すべてのプログラムにTOSHIBAフォルダができて、その中にMy Mobile V2が有りますから、
必要無ければ、アンインストールが一番下にありますので、アンインストールしてください。
インストールしてないのに、アンインストールは出来ないでしょう。


USBで接続して、携帯の電話帳の管理(バックアップも)ができますので、便利ですよ、それと充電もできます。

QMicroSoft BasicのDim文とVisualBasicのDim文の違い

私が20年前にMicroSoft Basicを使っていたときは、DIM文はDIMENSIONの略で配列型変数の宣言に使っていました。

最近VisualBasicの勉強を始めたのですが、変数の宣言はすべてDim文になっており、昔のMS BasicのDim文と意味合いが変わっているのに驚いています。

ここで質問させてください。
・なぜ配列を意味するDimension文が変数の宣言なのか?
・どのバージョンのBasicからDim文の意味が変わったのか?

私が使用していたのはNEC N-Basic,N-88Basic,N-98Basicです。

Aベストアンサー

VISUAL BASIC のDimは ディメンジョンの略です。
私の経験ではVB2.0時代からありました。

配列0を考えた場合変数とおなじであるからだとおもいます

Q英語のテストの問題です。 My mobile phone is the ( ) of

英語のテストの問題です。

My mobile phone is the ( ) of the two.

選択肢

ア much new イnew

ウnewer エnewest


答えはウのnewerらしいのですがエは何故ダメなのでしょう。理由を教えてください。よろしくお願いします!

Aベストアンサー

二つだから最上級じゃないということです。

単なる比較級でなく、
the 比較級 of the two
二者のうち〜な方

だから、比較級でも the がつきます。

でもこのような二者のうち〜な方で、口語では
the 最上級も用いられると辞書にもあります。

このタイプの問題は昔から有名ですが、
今では成り立ちません。

おっしゃるように newest でもいいです。

Q新しいシートのセル値→既存シートセルへ

 以前、ここでお世話になったものです。

 まだまだVBAは勉強不足で、ちゃんと説明できるかすらもわかりませんが、どうぞ宜しくお願いします。


 見積書を作っています。

 項目名を入力し、そのセルをダブルクリックすると、その項目の明細シートが作られるというものを作っています。

 できたワークシートの名前は、その項目名と同じものになるようにしています。




 教えていただきたいのは・・・


 明細の合計金額値を、項目のシートの金額欄に自動で入るようにしたいのですが、明細シートの名前が解らないのでどうやって指定すればいいのかわかりません。

 オブジェクト名でもできませんでした。

 やっぱり、あらかじめ名前を”明細1”、”明細2”という風に決めておかないと指定できないのでしょうか?


 ・・・ということです。


 どうか教えてください。

  
  

  

 

Aベストアンサー

質問のシートの例が具体的にかけていないので、質問していることが正確に判らない。
この程度のレベルでは、仕事でVBAを使う(対顧客のことで、誤ると重大な信用失墜にもなることだろう。だから十分経験もないのに初心者が乗り出すのは危険)のは無理と思う。
今回の質問も丸投げではないか。何かやってみて行き詰まった点の質問になってない。
回答が出てもも、回答の要点も理解できるかどうか不安がある。
>項目名を入力し、そのセルをダブルクリックすると
初心者はVBAのイベントということを十分理解しないで、エクセルなど高級ソフト(これらではそういう仕組みは茶飯事であるが)のマネが直ぐできると思わないこと。
ーー
少なくとも
(1)明細シートの様子(列、列データ見出し、行の様子)主要項目だけで良い
(2)請求書シート(主要な項目だけで良い)
の例示ぐらいして質問すること。
ーー
明細シート1行が請求書1枚に対応するのか。
>明細の合計金額値を
こんなもの請求書に持ってきた請求明細のデータでやれば仕舞いでは。
SUM関数を入れたら姉妹ではないか。
合計額1本で請求書を出すようなことをするのか。
>あらかじめ名前を”明細1”、”明細2”という風に決めておかないと指定できないのでしょうか?
意味・意図不明。

請求明細は請求書に出すのだろう。明細数はばらばらだと思うが、1ページ限度を超える明細数の場合、どう考えているのか。
ーー
いい性に印刷するのではないのか。
得意先を指定して、その得意先分だけ印刷するのかまとめて印刷作業を済ますのが普通ではないか。
ーー
私ならVBAでは、明細書様式は1ページ分だけ設けて使い、中身を順次入れ替えることで、データ1ページ作成ー1ページセル範囲ごとに印刷、を繰返すが、質問者は、どう構想しているのか。

質問のシートの例が具体的にかけていないので、質問していることが正確に判らない。
この程度のレベルでは、仕事でVBAを使う(対顧客のことで、誤ると重大な信用失墜にもなることだろう。だから十分経験もないのに初心者が乗り出すのは危険)のは無理と思う。
今回の質問も丸投げではないか。何かやってみて行き詰まった点の質問になってない。
回答が出てもも、回答の要点も理解できるかどうか不安がある。
>項目名を入力し、そのセルをダブルクリックすると
初心者はVBAのイベントということを十分理解しないで...続きを読む

Qちょっと難しかったです・・・Let me know if you wanna help me find my way around the city・・・・・・

サイトで知り合った人からのメッセージなんですが、
訳がうまくできません。ちょっとわからない単語などもあり悩んいます。おしえてください
If you ever get bored, text my phone. I like playing text-tag! :) It is xxxxxxx@... You never replied about wanting to hang out. I wanna go to Tokyo this weekend to visit Plaza Capcom because they are debuting Street Fighter 4 there on Friday and Saturday. Let me know if you wanna help me find my way around the city!
もし退屈なら携帯にメールして???私は・・・・好きなんだ。これアドレスxxxxx. あなたは遊ぶ・・・返事しない。私は今週東京へいく。なぜなら金曜日か土曜日に・・・・もし街へ案内?してくれるなら知らせて・・・?

すみませんおしえてください

サイトで知り合った人からのメッセージなんですが、
訳がうまくできません。ちょっとわからない単語などもあり悩んいます。おしえてください
If you ever get bored, text my phone. I like playing text-tag! :) It is xxxxxxx@... You never replied about wanting to hang out. I wanna go to Tokyo this weekend to visit Plaza Capcom because they are debuting Street Fighter 4 there on Friday and Saturday. Let me know if you wanna help me find my way around the city!
もし退屈なら携帯にメ...続きを読む

Aベストアンサー

もしたいくつならメールちょうだい。メール好きなので。アドレスはXXXXX@....
君は遊びに行こうといっても返事ないな~。週末東京いってカプコンプラザで金曜か土曜のストリートファイター4のデビューを見たいな~。
もしそのあたりの道案内みたいな、、手伝ってくれるなら返事頂戴。

Q一番左のシートのセルA6に入力した値を次のシート以降のシートに入力したい

Excel2003でマクロを作成しています。
複数のシートがあり一番最初のシートのセルA6に日付を入力します。
二番目以降のシートのA6に「一番左のシートのA6の値を入力しなさい」という関数をコードに書きます。これを何回も試行錯誤したのですができません。どうコードを書いたらいいかご教示ください。

Aベストアンサー

Dim sht As Worksheet

  For Each sht In Worksheets
    If sht.Index <> 1 Then
      sht.Range("A6").Value = Worksheets(1).Range("A6").Value
    End If
  Next

値ではなく、セルの参照を記入するのであれば
sht.Range("A6").Formula = "=" & Worksheets(1).Name & "!A6"
としてください。

QMy Y!mobileにログインできない

My Y!mobileのページ
https://webmy.ymobile.jp/portal/loginMsn/index
に何度ログインしようとしても

「只今アクセスが大変集中しております。申し訳ございませんが、しばらくたってから再度アクセスしていただきますよう宜しくお願い申し上げます。」のエラーが出て、先に進めません。夜にやろうと朝にやろうとこれで、いつやればログインできるのでしょうか。

Aベストアンサー

電話問合せをしてみましょう。

QExcel マクロ VBA 別シートのセルを検索し、該当するセルの右にあるセルを入力させる方法 s

Excel マクロ VBA 別シートのセルを検索し、該当するセルの右にあるセルを入力させる方法

sheet『品名マスタ』にはA列に№、B列に商品名があります。sheet『一覧』のB列7行目以降に№が入っています。
※この№が重複することはありません。

『一覧』B列7行目以降にある№で『品名マスタ』A列の№を検索し、該当する『品名マスタ』B列の商品名を『一覧』のC列7行目に反映する。
『一覧』B列の№が空欄の場合は何も入れない。

という処理のボタンをつけたいのですが、どなたか詳しい方ご教授いただけないでしょうか?
(OS:Windows7 Excel:2010を使用しております。)

Aベストアンサー

こんにちは。
以下を試してみてください。

>処理のボタンをつけたい
マクロ名は任意です。Match関数を利用しています。

'//
Sub Button1_Click()  '←ここは任意
Dim c, i
Dim Sh1 As Worksheet: Set Sh1 = Worksheets("一覧")
Dim Sh2 As Worksheet: Set Sh2 = Worksheets("品名マスタ")
With Sh1
 For Each c In .Range("B7", .Cells(Rows.Count, 2).End(xlUp))
  If IsNumeric(c.Value) Then
   i = Application.Match(c.Value, Sh2.Columns(1), 0)
   If IsNumeric(i) Then
    c.Offset(, 1).Value = Sh2.Cells(i, 2).Value
   End If
  End If
 Next c
End With
End Sub

-----------
この種の質問では定番ですが、イベント・ドリブン型マクロがありますので、それも加えておきます。一覧のB列に数字を入れると、自動的に商品名が出てきます。Vlook関数とは似ていますが、違うのは、数字を消すと、右隣のセルの内容も消えます。

'//シートモジュール(シートタブを右クリック、コードの表示)

Private Sub Worksheet_Change(ByVal Target As Range)
 Dim i As Variant '数値型ではありません
 Dim buf As String
 Dim Sh1 As Worksheet: Set Sh1 = Worksheets("品名マスタ")
 If Target.Count > 1 Then Exit Sub
 With Target
 If .Column <> 2 Then Exit Sub
 If .Row < 7 Then Exit Sub
 '数字を削除すると、隣の文字が消える
 If .Value = "" Then Target.Offset(, 1).ClearContents: Exit Sub
  If IsNumeric(.Value) Then
   i = Application.Match(.Value, Sh1.Columns(1), 0)
   If IsNumeric(i) Then
    buf = Sh1.Cells(i, 2).Value
    Application.EnableEvents = False
    .Offset(, 1).Value = buf
    Application.EnableEvents = True
    buf = ""
   End If
  End If
 End With
End Sub

こんにちは。
以下を試してみてください。

>処理のボタンをつけたい
マクロ名は任意です。Match関数を利用しています。

'//
Sub Button1_Click()  '←ここは任意
Dim c, i
Dim Sh1 As Worksheet: Set Sh1 = Worksheets("一覧")
Dim Sh2 As Worksheet: Set Sh2 = Worksheets("品名マスタ")
With Sh1
 For Each c In .Range("B7", .Cells(Rows.Count, 2).End(xlUp))
  If IsNumeric(c.Value) Then
   i = Application.Match(c.Value, Sh2.Columns(1), 0)
   If IsNumeric(i) Then
    c.Offset(, 1)...続きを読む


人気Q&Aランキング

おすすめ情報