1read 100read
2011年11月2期ビジネスsoft4: Excel総合相談所 99 (458) TOP カテ一覧 スレ一覧 2ch元 削除依頼

Excel総合相談所 99


1 :2011/10/26 〜 最終レス :2011/11/24
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に>>2-20あたりの注意書きやQ&Aを必ず読むこと。
★4 質問テンプレ(雛形)は必須じゃないけど、
   OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード
※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
  VBAを使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。
※【5】は、あなたがGoogleやヘルプで検索した際に使ったキーワードを書いてください。
  まだ検索してないなら、質問の前にGoogleやヘルプで検索してみてください。
  ttp://www.google.co.jp/
前スレ
Excel総合相談所 98
http://hibari.2ch.net/test/read.cgi/bsoft/1312896741/

2 :
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)
・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意
・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。何レス使っても構いません。
・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。
・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。
  ここは技術的な質問のみで。
・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。
  Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、
  どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。
  但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。
  ここみたいに丸投げはダメですよ。
・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。
  例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。
  その上で、どううまくいかないのかを具体的に書きましょう。
  エラーが出るなら、何処でどういうエラーが出るのか、
  想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。
・9 マルチはダメ。一度マルチしたら、謝っても他のスレの質問を取り下げても回答は得られないと思ってください。
・A テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、
  チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、
  ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。

3 :
★ルールを無視すると…
 >>1-2あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ
 ★1.マルチをしてしまったら…
 A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
   それが嫌なら初めからマルチなんてしないように。>>2にマルチ禁止と書いてあり、
   マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。
 ★2.>>1★4に従わず、必要な情報を出さないと…
 A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
   VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
   適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
   これはきちんとルールに従って質問、依頼した人のみの特権です。
 ★3.情報・条件を後出しすると…
 A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
   >>1★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
   長文になってもいいので詳細かつ明確かつ具体的に書きましょう。
★VBAについて
 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。 
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。

4 :
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)
 ▼環境・書式
  ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007以降では16'384列、1'048'579行扱える)
  ・ Excel2003以前で条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA)
  ・ 行の高さを0.25きざみ以下の単位で指定する
  ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト)
  ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける)
  ・ 祝日を判断する (作業セルに祝日を列挙、VBA)
  ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合)
  ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など
  ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
  ・ 罫線幅の自由指定
  ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA)
  ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整)
 ▼操作
  ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成)
  ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA)
  ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA)
  ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA)
  ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える)
  ・ 1セルを分割 (分割したいセル以外を結合)

5 :
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。
間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。
Excel2010についても未確認な項目が多いので変更点が有ればご指摘下さい。
また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。
>▼環境・書式
> ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
補足
2007以降ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、
指定も同じくcm単位でできる。
ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように
近い値に勝手に丸められる。
以上でテンプレ終わり

6 :
テンプレ終わりじゃねーよ
なんで毎回毎回忘れるかなぁ
次スレでは以下のをちゃんと>>4>>5の間に入れてくれよ

7 :
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)
 ▼数式・関数
  ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数)
  ・ 関数式でセルの選択状態を取得する (VBA)
  ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA)
  ・ 入力したセルに結果を返す (VBA)
  ・ 範囲を引数にしての文字列連結 (ユーザー定義関数)
  ・ 値の書き換え、値の保持 (VBA)
  ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む)
  ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA)
  ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数)
 ▼VBA
  ・ ExecuteExcel4Macroの参照で空セルと0値を区別する
  ・ セルの値や変数値で直接変数名を指定する (配列、コレクション)
  ・ VBのコントロール配列と同じような操作をしたい
   (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents)
 ▼ユーザーフォーム
  ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む)
 ▼グラフ
  ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる
   (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入)
  ┌┐
  〜〜
  ||

8 :
質問お願いします。
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】
sheet1
A1 住所検索入力欄
B1~B150 名前
C1~C150 住所
D1~D150 電話番号
E1~E150 備考
sheet2(データベース)
B1~B150 名前
C1~C150 住所
D1~D150 電話番号
E1~E150 備考
sheet1 A1セルに『品川』と入力した時に
sheet1 BセルからEセルに品川区在住の人のデータががずらっと出る関数を教えてください。
ざっとみ品川区在住は30人ほどいます。
vlookupだと最初の一人しか出ませんでした。
文章下手ですみません

9 :
ピボットテーブルで

10 :
>>8
オートフィルタ
C列に「品川を含む」の条件
ただしSheet2の1行目は空けて、データは2行目から始めてね

11 :
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 書式設定 表示形式 ユーザー定義 VBA NumberFormatLocal 等の組み合わせ
セルの値は他のセルの計算で使いたいので一桁の整数にして表示上は@AB…の文字にしたいのですが可能でしょうか?
「書式設定」の「表示形式」で「その他」の「太字」「漢数字」「大字」みたいなイメージで
或いは値を@AB…の文字で入力して他のセルの計算中に数値に直す方法は無いでしょうか?

12 :
>>11
「1」を「@」にする
=ASC(A1+11552)
「@」を「1」にする
=CODE(A1)-11552
ただし対応できるのは@〜Sまで

13 :
>12
dd

14 :
なんの音?

15 :
はいってまーす

16 :
はやくしてくれよ。
もれそうなんだよ。

17 :
貧は白髪染めのオッサンだな。
今どきの小学生でも、ネタは流行らないんだよ。

18 :
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010(2003上でも動かす予定)
【3 VBAが使えるか    .】 はい(少しだけ)
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA ADO 80040e37 等
excelのシートをデータベースとして扱いたいと思い、いくつかのサイトを参考に以下のコードを書きました。
先日までは動いていたのですが実行時エラーが出るようになってしまいました
Sub test()
Dim objADO
Set objADO = CreateObject("ADODB.Connection")
objADO.Open "Driver={Microsoft Excel Driver (*.xls)};" & "DBQ=Book1.xls;" & "ReadOnly=1"
Set objRS = objADO.Execute("SELECT * FROM [Sheet1$] WHERE ID > 2")
Do Until objRS.EOF = True
MsgBox ("ID:" & objRS("ID") & " 名前:" & objRS("名前"))
objRS.MoveNext
Loop
End Sub
エラー内容(Set objRS = objADO.Execute("SELECT * FROM [Sheet1$] WHERE ID > 2")行で発生)
実行時エラー'-2147217865 (80040e37)":
[Microsoft][ODBC Excel Driver] オブジェクト 'Sheet1$'が見つかりませんでした。
オブジェクトが存在していること、名前やパス名が正しいことを確認してください。
エラー内容を参考に[Sheet1$]のシート名部分へシート名をコピペしましたが実行時エラーのままです。
どのようにすればエラーを修正できるでしょうか?
よろしくお願いします。
実際のファイル: ttp://www1.axfc.net/uploader/Sc/so/287338.zip pass:excel

19 :
>【3 VBAが使えるか    .】 はい・いいえ
これじゃダメだって前スレに書かれてたのに、スレを立てたやつは
コピペしか能力が無いお馬鹿なのか?

20 :
>>7が抜けてるって指摘も前スレであったのに、それを過去スレからコピペすることすら出来ないような子ですから

21 :
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】
エクセルのセルの右下をドラッグすると01→02→03のように連番?が作成できますが、
01-01 → 02-02 → ・・・ → 09-09 → 10-0a → ・・・ → 16-10 → ・・・
のような10進数と16進数を組み合わせたのを作成することって出来ますか?

22 :
>>21
A1=TEXT(ROW(),"00-")&RIGHT("0"&DEC2HEX(ROW()),2)
あとは下にコピペ

23 :
>>22
天才。マジ助かったよ。ありがと。

24 :
読み込んだCSVの情報がUTF−8で出力されるのですが、
文字をマクロ内でSJISに変換する方法はありますでしょうか?

25 :
>>24
つ【5 検索キーワード     】vba utf-8 sjis 変換

26 :
自己解決しました

27 :
数式に使用されているセルを動かすと、
数式のセル指定が変わってしまいます。
これを固定する設定方法を教えてください。
例:
A1[100], A2[200], C1[ =$A$1 + $A$2 ]
ここでA1にセルを挿入
A1[空セル], A2[100], A3[200], C1[ =$A$2 + $A$3 ]
☆このC1の数式を固定したい。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 WindowsXP SP3
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 セル コピー 数式 参照し変更しない

28 :
>>27
利口じゃない人はINDIRECTを使うが、少し利口な人は名前定義を使う。
C1にカーソルを置いてA1に「二つ左」、B1に「一つ左」と相対参照で名前定義して
=二つ左+一つ左
とすればよい。

29 :
すまん、A1とB1じゃなくA1とA2か。
A1に「二つ左」、A2に「二つ左の一つ下」と名前定義だな。
=二つ左+二つ左の一つ下
だな。
もちろん名前はなんでもよい。

30 :
>>27
C1: =indirect("A1")+indirect("A2")

31 :
>>29
名前つかって出来ないんじゃない?
それだと普通の絶対参照と同じ動きじゃないかな。

32 :
>>31
名前ボックスで名前定義じゃなく参照範囲に=Sheet1!A1とかを指定する。

33 :
>>32
ん〜〜? わからん。

34 :
だれかExcel2003持ってる人、>>33に詳しく教えてやれ。
俺はExcel2010しか持ってない。

35 :
>>34
あなたの説明自体おかしくないか

36 :
数式で名前定義とかやったことないの?
やったことある人は参照範囲でピンと来るはずだが。

37 :
セルに入っている文字列に空白を保管して
固定長の文字列として取り出す方法はありませんでしょうか。
関数一覧をざっと見た感じ、ありませんでした。
ゼロを補完するのはTEXT関数でできるみたいですが。
例えば6文字の文字列が欲しいのだけど"AAA"という3文字しか
入っていない場合、"AAA"に空白3つをくっつけた文字が欲しい。
"AA"ならそれプラス空白4つ、""ならただの空白6つという風に。

38 :
>>37
=RIGHT(" "&A1,6)
うまく表示できるか分からないけど、" "の間には空白が5個

39 :
>>37
こういうことか?
=IF(LEN(A1)=1," "&A1,IF(LEN(A1)=2," "&A1,IF(LEN(A1)=3," "&A1,IF(LEN(A1)=4," "&A1,IF(LEN(A1)=5," "&A1,A1)))))

40 :
そんなあなたにSPACE()

41 :
>>39の空白のスペース投稿時に省略されてしまってるな。
式の最初の””内のスペースは5個から順々に4個、3個、2個、1個と入れていってください。
一応全角スペースで↓に作っておくけど、これももしかしたら省略されて一個づつしか表示されない
かも。
=IF(LEN(A1)=1,"     "&A1,IF(LEN(A1)=2,"    "&A1,IF(LEN(A1)=3,"   "&A1,IF(LEN(A1)=4,"  "&A1,IF(LEN(A1)=5," "&A1,A1)))))

42 :
SPACEなんて関数ねーぞ。
VBAならあるが。

43 :
固定長の長さが決まってるなら
たとえば、8に長さ合わせてスペース埋めるなら
こんな感じでしょ。
=A1&REPT(" ",8-LEN(A1))

44 :
>>38で答えでてるのに何で後から劣化版が出てくるんだ?

45 :
>>39みたいな馬鹿丸出しなのはネタでやってるの?

46 :
>>39はネタだからまだしも>>43はネタにならない微妙な回答やなあ

47 :
>>43は後ろにスペースと思ったんだな。
俺は>>38の解釈が合ってると思うが。

48 :
試しに>>38やってみたけど>>37,はこういうのを望んでいるの?なんか違うような気がするんだが。

49 :
もし後ろにスペースなら
=LEFT(A1&" ",6)

50 :
" "の間には空白が5個

51 :
右詰めで等幅フォントなんじゃね?
だから>>38が合ってると俺は思ってる。

52 :
>>50で納得。

53 :
>>37
後にスペース補完なら
=LEFT(A1&REPT(" ",6),6)
これなら固定長100文字とかでも
=LEFT(A1&REPT(" ",100),100)
で済むし

54 :
おいおい、RightとかLeftとか、質問者の意図を間違ってるんじゃないか?
文字列から取り出すんじゃなくて、
質問者は、長さに足りない分、空白を補完して固定長にしたいんでしょ
ちがうの?
テキストで取り出したいんだから、テキストでファイルに吐き出した際に
固定長にしたいってことなんじゃないの?

55 :
まともなのは >>43 だけじゃないか
あとはExcel本当に使い込んでないで返事してるんじゃない?
初心者が大変だよ
前の問題をみても、名前定義つかってとか。Excel使い込んでるとは思えん。

56 :
>>55
だからここは初心者同士が相談するスレなんだってば

57 :
>>56
そこのキミ、エクセル上級者向けのスレはどこかね。

58 :
初心者はどこのスレに質問したら回答得られるんだろね?

59 :
早速ありがとうございました。これで係の人が苦痛から解放されます。
そもそもは、Excelデータをテキストファイルに吐き出して
別システムへ渡す業務の改善が目的なのです。
渡し先のシステムでは各項目が固定長であることを想定しており、
歴代の係の人が10年以上ずっと手作業でテキストファイルの
桁位置を直して来たのだと本日知らされ、目眩がしました。
案として、項目ごとに決められた長さになるよう空白を補完した
文字列を取り出して別シートに並べ、CSV形式で保存したものを
メモ帳で開き、一括置換でカンマを取り除こうと考えた次第です。
ということで、LEFT(データシート名!A1&" ",6)で行けました。
A1が空の場合にも対応したいので、" "の部分を
空白6文字にして使わせてもらおうと思います。
固定長が長い場合、>>53のREPTも使おうと思います。

60 :
 A   B     C
1野菜 ニンジン
2果物 イチゴ
3肉   ラム
4果物 メロン
こんな表で、C列に、A列が「野菜」なら「vegetables」、
「果物」なら「fruit」、「肉」なら「meat」という具合に返させたい場合、
IFの入れ子以外よりもシンプルなやりかたはありませか?

61 :
>>60
ExcelのHelpでVlookupのサンプル見ると
すぐわかると思うよ

62 :
>>61
参照用の表を別に作らずにやることはできませんか?

63 :
みなさまご回答ありがとうございます。
おかげさまでやりたいことが実現できました。
設定項目の中にそういう項目があると思っていたのですが、2003には存在しないのですね。勉強になりました。
またわからないことがありましたら質問させてください。

64 :
>>59
最初からそうやって書いてよ
Excelの「名前を付けて保存」の中に「スペース区切り (*.prn)」というのがあるでしょ
それが固定長だよ
不足するスペースは自動的に追加してくれる

65 :
ピボットテーブルをマスターしたいんですが
自分でいろいろいじって覚えたいので
そのためのサンプルファイル付の解説サイトみたいなのはないですか?
Excel2007だけど、バージョンの違いに関わらない一般的なことを中心に学習したいです。

66 :
>>59
出来たのならそれでいいでしょうが、本格的に業務のシステムの流れで使いたいなら、
次のようなものにトライしてください。
流れとしては
読み込みをSheet1のA列とB列にしたとして
結果は別なシート(たとえばSheet2)に求め、そのシートをテキストで出力する。
Sheet1のA1とB1は、結合されSheet2のA1セルに求まる。
その際Sheet2のA1セルの式は、次のように書く。
A1は6文字、B1は8文字の固定長にしたいとき。
=REPT(" ",6-LENB(Sheet1!A1))&Sheet1!A1&REPT(" ",8-LENB(Sheet1!B1))&Sheet1!B1
あとは下にコピー。
変えるのは、6とか8のところね。
ひまならやってみて。

67 :
>>60 >>62
・IFの入れ子以外
・参照用の表を別に作らず
って条件だと
ユーザ関数を作るって方法もあるが
マクロ(VBA)の知識がないと後々のメンテが大変かも

68 :
>>62
=CHOOSE(MATCH(A1,{"野菜","果物","肉"},0),"vegetables","fruit","meat")
これで行けると思うけど、IFを入れ子にするのと
あまり変わらないんじゃないかなあ。
こういうのは表を作ってVLOOKUP使うのが一般的だし、
食品の数が増えた時のメンテも楽だと思うよ。

69 :
>>65
ggrks
「ピボットテーブル」でググれば、
サンプルファイルで練習できるサイトが一番上に出てくるわけだが

70 :
>>59
その用途だと 固定長バイトじゃない?
Excelデータに漢字(というか2バイトコード)があるなら
LEFTじゃなくて LEFTB だと思うぞ

71 :
>>70
それにしても変な使い方だよね

72 :
>>60
>>60
=if(a1="野菜","vegetables","")&
if(a1="果物","fruit","")&
if(a1="肉","meat","")
こういうのはどうかな

73 :
>"AAA"に空白3つをくっつけた文字が欲しい
これを"___AAA"と解釈するやつっていったい…
(注:"_"は半角スペース)

74 :
>>73
こっちで好きなだけどうぞ!
【質問不可】Excel総合相談所スレの雑談・議論スレ2
http://hibari.2ch.net/test/read.cgi/bsoft/1151651536/

75 :
>>55
おまえはINDIRECT使う口だなw

76 :
>>62
表を作ってVLOOKUPが妥当だが
=HLOOKUP(A1,{"野菜","果物","肉";"vegetables","fruit","meat"},2,FALSE)
でもできる。
VLOOKUPだとどうやるんだっけ?
;と,を逆にするのかと思ったが違うみたいだな。

77 :
あぁそうか、縦は;で横が,だから
=VLOOKUP(A2,{"野菜","vegetables";"果物","fruit";"肉","meat"},2,FALSE)
こうだな。
こんなもの使えないから表を作るのが妥当だな。

78 :
やっぱ外出しの表だね。
日本の政府の役柄(大臣)で氏名を検索したいな〜んて場合、
表にしないとメンテナンス大変だ〜〜

79 :
>>18 自己レスです。
新しくわかったことです。
作成後エクセルを閉じ、開きなおすと実行時エラーが表示されるようになることがわかりました。
また、一度でも名前を付けて保存ダイアログを表示すれば、
エクセルを閉じるまで動作することがわかりました。
エクセル2010の場合、VBAから名前を付けて保存ダイアログを表示してもダメなようです。
名前を付けて保存ダイアログを表示せず動作させる方法はないでしょうか?

80 :
>>64
*.PRN形式は、セル幅を変えると出力されるデータ長が変わって
しまうため、この用途には危険と判断しました。
>>66
月曜にそれでやってみます。係の人が週のうちこのデータ修正に
三日かけているのが、おそらく一瞬で終わるようになると思います。
>>70
データは英数半角文字のみなので、どちらでも行けます。
>>71
そうですかね?
固定長データというのは、CSVと並んで受け渡し用のフォーマットとして
よく使われていると思うのですが。
本件は、例えば商品コードがA03だったり、BB-01だったりするため
空白を補ってやらないと固定長データにならないのです。

81 :
37さん、漏れはおなかいっぱいでし。

82 :
>>80
結論
VBAでやれ
ボタンクリック一発で固定長データを保存するマクロぐらい誰にでも書ける

83 :
>>80
頑張ってください。
この使い方はカンマの置き換えもいりません(使い方の定番で、カンマ自体いしません)、
ただし、2003ですと長さ制限に引っ掛かるかもしれません。
>>71も私です、あなたにでなく、変な関数の使い方を教えた人に対する
発言です。

84 :
そんなもの何で関数でやるんだろうね。
prn形式がセル幅変えるとなんたらかんたらって、列幅を固定にすりゃすむ話じゃないか。

85 :
さすがにそれは

86 :
>>37
それは昔からの定番の技を使うよ。
対象の文字列がA$、返り値の文字列をB$とすると
B$=LEFT$(A$+" "),6)
でいい。
これは昔BASICでゲームを作るとき、スコア表示を例えば今350点のとき000350と表示させたいときによく使ったもんだ。

87 :
ここは"Excel総合相談所" なわけだが
関数?VBA?
もうなんだか
昔のBASICだとしてもこんな変なコードで動いてたの?・・・・"(" が一つ足りない
普通エラーになると思うが

88 :
相手にしてもらいたいだけじゃないの。あんまり相手にしないほうが

89 :
VBA最強ってことで

90 :
LOOKUPで抽出した文字列の文字と文字の間に別の文字を挿入することはできませんか?
ただし、そのLOOKUPさせた1ますのセルの中で完結させる方法でです
つまり、LOOKUPさせたセルとは別のセルに&とか関数を入れたりしてってのは無しです
VBAも無しでお願いします

91 :
>>90
どういう状況かもう少し具体的に。じゃないと出来るとか出来ないとかも言えない。
bakaという文字をba&kaみたいにしたいんだろうけれど、規則性が分からないと何ともいえない

92 :
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】
行・列の削除・追加及び幅等の変更の禁止をした上で
セルの結合は許可したいのですが・・・
何か方法はありますでしょうか?
シートの保護で削除・追加等ができることはわかりました
よろしくお願いします

93 :
>>92
残念ながら無理

94 :
>>93
早速の回答ありがとうございました!
後の集計のため、行・列の変更を禁止した上で配布したいのですが
自分で作業してみたら、セル結合ができないと不都合があることに
気づきました
代用案を考えてみたいと思います

95 :
>>91
すみません
自己解決しました
アドバイスありがとうございました

96 :
自己解決したらどんなことしたくて○○で解決したとか
書いてくれるとうれしい…後学のために。

97 :
要は、LOOKUPした文字列の抽出や切り貼りがしたくて、
そして、単純に&と基本的な関数で解決しました。。。

98 :
【1 OSの種類         .】 Windows7 32bit
【2 Excelのバージョン   】 Excel2010正規品
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル2010 フリーズ xlb
初歩的な質問で申し訳ありませんが、自力では解決しませんのでよろしくお願いします。
特定のエクセルファイルを開くとほぼ100%フリーズします。
http://www.office-qa.com/Excel/ex91.htm
ここで調べると
XLSTARTフォルダの中のファイルを一度削除すると、大体フリーズしなくなるらしいですが
XLSTARTフォルダの中は空っぽで削除するものがありません

99 :
>>98
特定のエクセルファイルをあげてもらわんことには原因はわからないぞ
openoffice(フリーのエクセルみたいな奴)で開けるならそれで開いて、
シート等を新しいブックにコピーすると回避できるかも
openofficeじゃなきゃネットカフェ当たりにある、2003などで試してみるかだな

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼