ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

パワポの「吹き出し」をいじくる方法

2017-02-10 22:49:44 | Officeソフト&VBA
https://www.novel-s.jp/single-post/2017/02/10/%E3%83%91%E3%83%AF%E3%83%9D%E3%81%AE%E3%80%8C%E5%90%B9%E3%81%8D%E5%87%BA%E3%81%97%E3%80%8D%E3%82%92%E3%81%84%E3%81%98%E3%81%8F%E3%82%8B%E6%96%B9%E6%B3%95%E3%80%82

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excelで地図上にデータを表現する(マップグラフ)

2017-01-31 14:10:50 | Officeソフト&VBA
世界地図に人口の違いを載せるとかいうときに使うやつ
方法が書いてあるサイトをメモメモ

マップ グラフを作成する
https://support.office.com/ja-jp/article/%E3%83%9E%E3%83%83%E3%83%97-%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B-f2cfed55-d622-42cd-8ec9-ec8a358b593b

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「Excelのダメなグラフでウソをつく法」が勉強になる・・・

2016-04-13 13:31:20 | Officeソフト&VBA

Excelのダメなグラフでウソをつく法
http://id.fnshr.info/2016/03/28/excel-bad-charts/

なんだけど、勉強になる。
そっか、3Dで傾けると、ごまかせるのか・・・
円グラフは、手前に持ってくると、大きく見せられるんだね!

勉強になるなあ・・・

って、え、それをやるなっていう記事なの?
これって、ダチョウ倶楽部とおなじで、「やるなやるな」は、「やりなさい」の意味なんでしょ?
ちがうの?

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PowerPointのテキスト部分だけを取り出す方法

2016-03-23 20:34:33 | Officeソフト&VBA
を聞かれたので・・・需要あるのかな?




■お題
PowerPointのスライドの文字を、テキスト文字列として取り出したい
(SlideShareなんかが、そうなっている)
→検索サイトでひっかけてもらうのに、必要らしい??




■方法
*.pptx形式のものでしかできない。

1.拡張子を.pptxから.zipに変える
2.解凍する
  →pptxファイルのフォーマットはzip。なので、拡張子をzipに変えれば、解凍できる
3.出てきたファイル、
  ファイル名のフォルダ>ppt>slidesとフォルダを開いていく
4.そこにslide1.xmlから順にスライド数分、XMLファイルがあるはず。それを開く
5.その中に<a:t>で始まるタグがいくつもあるはず。それが、テキストの中身

以下、サンプルの図

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Wordで作成し、PDFにしたとき標準フォントが埋め込まれない!どうするか?

2016-01-18 11:39:16 | Officeソフト&VBA
Wordで作成し、PDFにする。
(wordで「名前をつけて保存」→「PDFまたはXPS」)

Acrobatでフォントが埋め込まれたか、確認すると
(Acrobatで「ファイル」→「プロパティ」の「フォント」タブで確認できる)

システムフォント(上の2つ)は何も書いていない→埋め込まれていない!

でも、最近、「全てのフォントを埋め込め」という指定がある。
どうしよう~



さっきの、オプションダイアログで

ISO 19005-1に準拠のほうにチェックする
そうすると、

システムフォントも埋め込まれている。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Wordで枠を固定したい

2016-01-02 17:10:24 | Officeソフト&VBA
情報処理学会の全国大会の論文、書いている人もいるかと思うけど
そこのサンプル、必要最低限の設定しかしていないそうで

↓ここで、本文の下の改行を削除すると

ってなかんじで、脚注の枠も動いてしまう。これはこまる。
改行を削除しても、枠は動かなくしたい!!
文字を入力しても、枠は動かなくしたい!!

その方法




(1)はじめに、線のほうを設定する
線を右クリックして、「オートシェイプの書式設定」を選択
(これ以外のポップアップメニューが出ることがある。
 適当なところを選んで、何回かやると、これがでる・・と思う)

出てきたダイアログで
・四角を選択
・詳細設定ボタンをクリック
  ・水平方向
    右方向の距離を選択し、基準をページにする(数字は自動的に変わる)
  ・垂直方向
    下方向の距離を選択し、基準をページにする(数字は自動的に変わる)
  ・オプション
    オーバーラップさせるのチェックをはずす(というか、全部のチェックをはずす)

で、あとはOKしてダイアログ閉じる。何も起こらないはず

(2)次に、脚注のはいっているテキストボックスを選択する
テキストボックスを右クリックして、「テキストボックスの書式設定」を選択
(これ以外のポップアップメニューが出ることがある。
 適当なところを選んで、何回かやると、これがでる・・と思う)

出てきたダイアログで
・四角を選択
・詳細設定ボタンをクリック
  ・水平方向
    右方向の距離を選択し、基準をページにする(数字は自動的に変わる)
  ・垂直方向
    下方向の距離を選択し、基準をページにする(数字は自動的に変わる)
  ・オプション
    全部のチェックをはずす

で、あとはOKしてダイアログ閉じる。何も起こらないはず


ここまでして、改行を削除すると、そして文字を入力しても、
脚注とその線は動かないはず

※ただし、大量に文字列を急激に入力すると、くずれることが、これでもあるみたい
 なので注意(理由はよくわからない)

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excel上のデータをグラフ化、SVG化するテンプレートE3D3話を聞いてきた

2015-08-21 14:26:46 | Officeソフト&VBA
6月20日に
E2D3ユーザーズ・ミートアップ
の第一部にでてきたので、メモメモ



来場者アンケート
・(データ)ジャーナリスト:2
・アナリスト、まーけたー、営業、企画:6
・デザイナー、広告代理店:1
・その他(エンジニア:3人、インストラクタ)

E2D3とは
・Excel to D3の略
・Javascriptが扱えないと利用できなかったD3.jsを
 Excel上で利用可能にする

D3.js
・任意のデータをDOMと結合させて
 SVGとか・・・
・でーたどりぶんどきゅめんと

本日の開催背景と目的
・イベントはたくさん行い、賞も受賞
・実際に現場でもっと使ってもらいたい
・使用経験・意見を開発にフィードバックし、
 よりよいプロダクトにしていきたい

http://e2d3.org
UseE2D3というところがあり、そこに書いてある通りにやるとできる
・OneDriveのストレージ→Excel onlineを開く
・E2D3は、Excelのアプリ
  →2013から、アプリというのができた
   Officeアプリ→Officeアドインの1つ
 挿入→Officeアドイン
   →ストア
   →検索でE2D3を入れる
    このツールを信頼する
   →メニューからいれられる

・E2D3を起動
  今使えるグラフのテンプレートがでてくる
   データの持ち方がでてくる
   Visualizeを押す
    →ダミーデータが入っている
     中身を作成、同じ形式にして、データ範囲しているすると出てくる

  Save Image→SVG,PNGでだうんろーどできる
  しぇあ チャート→URL、ブログ用に埋め込みもできる

・もどりかた:Homeボタンをおす
  →前のデータの内容は消しておいてね(新しいのとバッティングするから)
  →リトライでもう一回

留意事項
・加工する
・シートクリア
・リンクデータで反映される





通信がうまく入らなかったので、E2D3がうごかなそうだったので、
帰ってきた。このあと、第二部があったもよう。

こんど、いんすとーるしてみよっと

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

「PowerPointを禁止するべき理由」をPowerPointで解説!?

2015-05-28 10:24:21 | Officeソフト&VBA

うん??

「PowerPointを禁止するべき理由」をPowerPointで解説
http://gigazine.net/news/20150528-ban-powerpoint/

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excel VBAで、REST(JSON)データ取得

2014-12-18 12:45:25 | Officeソフト&VBA
Excelのマクロ(VBA)を使って、
RESTでJSON形式で返ってくるサイトにアクセスして、
結果を表示したいということって、ありませんか?
(ないって・・・あると思ってください)

例えば、今、ある検索を、RESTでサーバー側で実行させていて、検索結果をJSON
で返して、ブラウザに表示しているんだけど、実は、Excelでも見たいんだよねえ~
というケース。


VBAでJSONを扱う
http://javascript.dohow.jp/advance/jsonvba.shtml


に、そのやり方が書いてあったので、やってみました。




■例

今、以下のJSONデータ
{
  "mytablename":"user",
  "mytable":[
    {"myid":"1","myname":"family1 last1","mydate":"2014/12/10"},
    {"myid":"2","myname":"family2 last2","mydate":"2014/12/10"},
    {"myid":"3","myname":"family2 last3","mydate":"2014/12/10"},
    {"myid":"4","myname":"family3 last4","mydate":"2014/12/10"}
   ]
}

が、jsontestdata.phpにアクセスすると、得られるとする。
(JSONでのレコードの書き方は
Javascript|JSONでの、レコードの表現方法(配列、連想配列)→{}と[]の違い
を参照)
これを取得する

■ソースコード

Sub ボタン1_Click()

'#########################################
'# JSON操作:VBAでJSONを扱う
'# http://javascript.dohow.jp/advance/jsonvba.shtml
'# から引用
'#########################################
Dim objSC As Object 'Script Control
Dim strFunc As String '関数文字列
Dim strJSON As String 'JSONデータ(文字列)
Dim objJSON As Object 'JSONファイルをパースしたもの

'# JSONの為の設定
Set objSC = CreateObject("ScriptControl")
objSC.Language = "JScript"
strFunc = "function jsonParse(s) { return eval('(' + s + ')'); }"
objSC.AddCode strFunc


'# jsontestdata.phpアクセス
target_url = "http://localhost/jsontestdata.php"
sendData = ""

' POSTで飛ばします
Set httpObj = CreateObject("MSXML2.XMLHTTP")
httpObj.Open "POST", target_url, False
Call httpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
httpObj.send (sendData)

strJSON = httpObj.ResponseText
Set objJSON = objSC.CodeObject.jsonParse(httpObj.ResponseText)

'# 結果表示
recno = 1
For Each rec In objJSON.mytable
Cells(recno, 1) = rec.myid
Cells(recno, 2) = rec.myname
Cells(recno, 3) = rec.mydate
recno = recno + 1
Next

End Sub



■実行してみた



■注意点

名前がmytable,mynameなど、myをつけている理由。

これをtableとしてしまうと、VBAはTable,Nameなどのように、
1文字目を大文字にしてしまう(VBAにそういうプロパティ等があるため)
ところが、大文字にしてしまうと、当然、違うものなので、エラーに
なってしまったりする。

それが面倒なので、全てにmyをつけている。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ExcelからマクロでPHPにアクセスしたときに、セッションはどうなるか?

2014-12-18 10:43:54 | Officeソフト&VBA
セッションIDを送らなくても、引き継がれるか実験。

■ソースコード

●PHP側 session.php

<?php

session_start();

if (empty($_SESSION['count'])) {
   $_SESSION['count'] = 1;
} else {
   $_SESSION['count']++;
}
?>

Hello world! <?php echo $_SESSION['count']; ?>Times.


http://php.net/manual/ja/session.idpassing.phpを参考に一部編集

●Excel側session.xls(2003以前の形式xlsで保存)

「ボタン1」をクリックしたときの処理
(「標準モジュール」として作成)

Sub ボタン1_Click()

target_url = "http://localhost/session.php"
sendData = ""

' POSTで飛ばします
Set httpObj = CreateObject("MSXML2.XMLHTTP")
httpObj.Open "POST", target_url, False
Call httpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
httpObj.send (sendData)

' 結果表示
MsgBox (httpObj.ResponseText)

End Sub



■実験結果
●ボタン1をクリックすると、

Hello world! 1Times.
Hello world! 2Times.
Hello world! 3Times.

と上がっていく。ファイル(session.xls)を閉じても、Excelが開いて
いる場合は、カウントアップしていく

●Excelを閉じて、再度Excelを立ち上げ、開くと、1からカウントアップする
→つまり、Excelを閉じると、そこでセッションも切れる。


●ここで、3Timesになったとき、session.xlsをコピーし、session-コピー.xlsを
作成し、それを立ち上げ


session-コピー.xlsの「ボタン1」をクリックすると

Hello world! 4Times.
となる。つまり、Excelが同じなら、そこで開いているファイル内で
Sessionは共有される(ブラウザのタブと同じ?)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ExcelからMySQLが操作できるMySQL for Excelがいつの間にか、(たぶん)無料で入ってた・・・

2014-11-18 13:41:43 | Officeソフト&VBA
あ、あれえええ??


Excelの「データ」にMySQL for Excelが入ってる(@_@!)
で、そこをクリックすると・・・

ど、どーして自分のパソコンにMySQL5.6が入ってるって、知ってるんだろう。
教えた記憶ないんだけどなあ・・
とにかく、それをクリック

え~、どうして、MySQL内のデータベースが見えるんだ?
教えた気ないんだけどなあ・・・
たしかにユーザーrootのパスワードはpasswordにしてあるから、
だれでもわかるんだけど・・・(テーブルには権限かけてない)

sakila(さきーら:あのMySQLのいるかのこと)というDB,
DBを作った気はないんだけど(MySQL5.6を入れた記憶はあるが)、クリック!

テーブルが見える(@_@!)
actorを選択「Edit MySQL Data」をクリックすると、

Importをくりっくしてみる

え、これで編集できるの?
ええええっ~

これ便利。

でも、自分入れたり、設定した記憶がまったくないんだけど・・・
・・・だれか、便利なので入れてくれたのかなあ?
小人さんが?ハッカーさんが?

みなさんのパソコンには、どうです?
もし、ハッカーさんの仕業なら、
次は、Windows8入れといてください。たのんます・・・

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PowerPointをFlashやHTML5に変えるフリーソフト(モバイルやSCORMも、ですって @_@!)

2014-10-29 13:27:26 | Officeソフト&VBA

今聞いたんだけど、試している時間がないので、メモメモ
(というわけで、試してはいない。どんなもんかよくわかんないけど)


iSpring Free 7
http://www.ispringsolutions.com/ispring-free


なんかそのページに、
Create Mobile-Ready Content
とか
Develop E-Learning Courses
とかかいてあるんだけど。。。


モバイルやSCORMも、ですって @_@!



※ちなみに、有償版は、「Tin Can API Support」って、まじ!

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excelの標準の色と2007からのテーマの色のRGB

2014-10-14 15:26:40 | Officeソフト&VBA
Excel2003までは、色のパレットがあって、
そこから適当に色が選べた。

2007でも色は選べるんだけど、
まず、上にはテーマの色というのが、出てくる。

このテーマの色は、ページレイアウトの配色で変えられる

たとえば、

キュートに設定すると

キュートになっている。

ここで、そのテーマの色のRGBが知りたいとき・・
マクロでしらべればいい。
こんなかんじ。

(ブルー、グリーン、レッドの順(つまり逆)になっている)
このマクロはこんなかんじ。
Sub getMyRGB()
    
    For i = 1 To 56
        Cells(i + 2, 1).Interior.ColorIndex = i
        Cells(i + 2, 1) = i
        Cells(i + 2, 2) = Cells(i + 2, 1).Interior.Color
    Next
    
    For i = 1 To 12
        Cells(i + 2, 4).Interior.ThemeColor = i
        Cells(i + 2, 4).Interior.TintAndShade = 0
        Cells(i + 2, 4) = i
        Cells(i + 2, 5) = Cells(i + 2, 4).Interior.Color
    Next
    
End Sub



(C桁、F桁は =DEC2HEX(B3) のように16進数に変換している)



参考サイト

セルの操作(文字色の設定)
http://officetanaka.net/excel/vba/cell/cell04.htm


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Excel2007など、Office系でリボン(上のメニュー)が出なくなったとき

2014-08-28 12:16:37 | Officeソフト&VBA
Excelとか、ふつう

のように、リボン(メニューの下の選択欄)が出てるけど、
これが消えることがある。こんなかんじ

クリックすればリボンは出てくるんだけど、これを出しっぱなし
にしたい場合

Officeボタン(ホームの上)を右ボタンクリック

出なくなっている状態の場合「リボンの最小化」に
チェックが入っているはず。これを選択して
チェックをはずせばOK

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ResponseXMLで読めないとき

2014-08-06 15:04:41 | Officeソフト&VBA

ExcelVBAでサイトにアクセス、XMLを受け取ったら、セルに書き出したい!
http://blog.goo.ne.jp/xmldtp/e/1060c7d1a90990850b14fcf2fde2258d

では、


Set xdoc = httpObj.ResponseXML
Set itemNodeList = xdoc.getElementsByTagName("item")

でXMLのRSSが読み込めるんだけど、
サイトによっては、まったく読み込めないことがある。

このときなんだけど、理由は不明なのだが・・・


'target_urlに読み込み先URL,sendDataに送信データをあらかじめセット

    Set httpObj = CreateObject("MSXML2.XMLHTTP")
    httpObj.Open "POST", target_url, False
    Call httpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
    httpObj.send (sendData)
    
                '   結果表示
    Set xdoc = CreateObject("MSXML2.DOMDocument")
    xdoc.LoadXML (httpObj.ResponseText)
    
    'itemを取り出し(複数ある)
    Set itemNodeList = xdoc.getElementsByTagName("Name")


のように、xdocをMSXML2.DOMDocumentでオブジェクト生成して、
それに、読んできたテキスト(httpObj.ResponseText)を
LoadXMLすると、うまくいくことがある・・・なぜか・・?

【ヒントにしたサイト(そのやり方ではない)】

http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200707/07070021.txt


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする