2024年03月24日

細かいExcelシートをVBAのみでPDF化するのは無謀だったようだ。こんなときはcubePDF

最近。色々やる羽目になりまして。

前回も、ちょっと書いたんですが、かなーり細かいシートを
PDF化するという、正直やりたくないことをやってたんすよ。

そりゃ、1,2ページのシートをPDF化するなら
こんなかんじですよね。
長すぎて、複数行に渡ってしまいましたが、
そこは、いい感じにしてください。
あ。pdfnameはフルパス。PRTOは最終ページ。

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf_name, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, From:=1, To:=PRTO, OpenAfterPublish:=False


これが、ページ数が2桁、3桁に増えていくと

動いているか、
 固まっているか、
  だれも観測できない


重ね合わせの状態っていうんですか?


ま、そんな格好いいもんじゃないですよ。
「やばやば」って、半泣きですよ。

ふと思い出しました。
cubePDFってあったなぁ。

溺れる者は藁をも掴む

実際、溺れてましたからね。
cubePDFインストールしましたよ。3.0を
コードを書きましたよ。こんなの

Application.Dialogs(xlDialogPrint).Show Arg13:="CubePDF"


変換過程が、よくわかる。
無茶苦茶はやい。
すばらしいけど、途中に出るダイアログいらないな。

ってことで、

ActiveSheet.PrintOut ActivePrinter:="CubePDF"


いい

 素晴らしい


  傑作



posted by ろびんいちごー at 01:12| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2024年02月13日

ExcelのVBAを使った行削除がこんなに遅いなんて〜解決策はUnionを使うことじゃなくて、もっと単純なことだった

遅い。遅いよー。

今まで、万を超えた行を一度に削除することなんかなかったし、
かかっても、許される範囲だろ・・と思っていた時期もありました。

しかし、めっちゃ遅い。

何か、つくっているときの待ち時間は「許される」けど
ただ、削除するときは「苦痛でしかない」

実感しました。


でも、これは、ちょっとまずいレベル。

普通の方法以外に、早いと言われている
Unionも使ってみましたよ。
いや、でも、だめだなこりゃ。

ここで、紹介されている、図形を一括削除するコードだとむちゃくちゃ早いのに。
https://www.relief.jp/docs/excel-macro-delete-all-shapes.html

こんなの
ActiveSheet.Shapes.SelectAll
Selection.Delete

「なんだよ〜。どうしてだよ〜。」

と、いいながら、ふて寝してました。




そして、

「あっ」

「シートまるごと削除すれば、良くね?」

その上で、元ネタからコピーするなり、変数を展開するなり
どうにでもなるじゃない。

「簡単なことだよ。ワトソンくん」

思い出しましたよ。この台詞を。

つまり、これだけでおけ。
ActiveSheet.Delete


「なんで、気づかないんだよ。」
 「ま、解決したし、よかったよかった。」



しかし、
 このあと、
  彼を

万を超える行をPDF化するという
 神をも恐れぬ所業に

Excelのダンマリという鉄槌が下されることを
彼は、まだ知らなかったのだった。





posted by ろびんいちごー at 23:56| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2022年07月18日

C#が意外に使いやすくて、びっくり

PCで、何か、ちょこちょこ作ろうとしたときに
まっさきに、近づかないようにしていたのが
Cの系統。

文字列使えない様子だし
もちろん、お手軽文字列編集なんてできないし
 構造体って、苦手意識強いし
  ポインタとか、何か嫌な感じだし
  (アセンブラは、そんなに嫌いじゃないんだけど・・)



で、とにかく近づかないようにしていたら
仕事の関係で
C#っつーものを触らなきゃいけなくなって。

「やだなぁ」

とは、思ったけど、とりあえず買いましたよ。
C#の絵本

とりあえず、飛ばし読みしてたら

「あ、これ、ほとんどJavaじゃないすか」

文字列ばりばり使えるし、
 Substring()も、しれっと普通に存在してるし
  構造体も、相変わらず居るけど、影薄くなってるし


「なんだ〜。こんなに解りやすくなって〜」
「早く言ってよぉ」

と、すっかり上機嫌。


シングルトンとか、ちょっと変わり種もあるけど、
存在理由も納得だし。

というわけで、
勉強がてら、Javaものを、C#で作り直してみました。

http://www.vector.co.jp/soft/winnt/personal/se509188.html

時間あったら、どーぞ。

posted by ろびんいちごー at 23:40| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2022年02月05日

共通テストに2025年「情報」追加という無謀な決定。さらに、ソートの仕組みとか、取り上げられてたんだけど、ソートってつまらないんですよね

どこかの記事で、ソートが出てたんだけど。

ソートの仕組みなんて、知る必要ある?

ソートなんて、Excel VBAとか、汎用コンピュータでの
ユーティリティとか
ほとんどの環境で提供されているし、無くても、ファイルを
他の環境に渡して、処理して、結果ファイルを引き取れば、
良いのでは?

単一の環境で完結させようとか、頭の固いこと言っているから
困るだけで。

わざわざ提供されている、ソートの仕組みを考え直さなきゃいけない時って
提供されているソートじゃ、遅すぎて使えないって状態では?
こんな、必要性もない、面白くもないもの学習して、どうすんだろ。
クイックとかヒープとかやるの?
こんな科目、大嫌いになる自信あるっす。

ここら辺は、電気通信大学とか、高専の情報系のひとに
まかせようよ。
個人は、提供された環境を、どううまく使うかでしょ?

こういう、難しくすることだけが「学問」と考えている人は
MZ-80 SERIES BASIC解説を、
百回読んで反省して欲しい。
https://www.itmedia.co.jp/news/articles/1212/25/news130.html

実際、当時読んで、「なんか、面白いかも」
って、影響受けたひとりがここにいる。

円周率の出し方を考えるとかもあり、
数学的な思考も育つ名著です。

でも、全然偉そうじゃないよ。
「ねっ、面白いでしょ?」
っていう、スタンス。


で、大学入試センターが、出しているサンプル見てみました。
https://www.dnc.ac.jp/albums/abm.php?f=abm00040342.pdf&n=12_

うわっ、典型的な情報処理試験している。

何と言うか、いま、日本の子供が学ぶべきは、これなの?

地震が起きた時、津波はどのように起こって、
どんな情報収集手段がある?とか
 緊急地震速報の仕組みは、有難いけど、こんな限界があるよ。とか
  災害時には、音声通話に、意図的に規制を掛けてますよ、
  でも、こんなときは例外です。とか

   将来的に、こんな困難や、問題が発生すると思うけど、
   こんな、対処方法や、制度、情報収集方法がありますよ。

   とかね

これが、本来の生きていくための「情報」ってモノじゃにゃいか?
と思うんだけど。


「情報」って言ったら、すぐ「プログラミング」という脊髄反射

 しかし、文科省とかじゃなぁ。彼らじゃ無理なのかなぁ。

posted by ろびんいちごー at 16:15| Comment(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2016年04月30日

iframe内で画面が崩れること無くHTML javascript table ついでにクッキーを使う時に書いたコード

javascriptで内申のランクを計算するものをつくりましたが、
その時に、
物は試しということで、
ブログの記事内で、
HTMLをベタ書きしてみました。
が、
崩れ方が、予想以上にダメでした。💤

・・・という訳で、久々にiframe内でHTML/javascriptを使ってみて、
試して期待通りに上手くいったところだけ
書いていきます。

表示に時間が掛かる場合があるので、
続きは、追記で・・。続きを読む
posted by ろびんいちごー at 19:03| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2015年10月29日

php javascriptで使うあんな環境こんなツール

phpやらjavascriptやらで、細々とつくってました。
別に、どこかに篭ってた訳ではないですが・・💤

自分の思った通り動かないと、なかなかシンドイものですね。

○エディッタのおすすめ

ちょっと前までは、TeraPadを使っていて、これはこれでなかなか
イイモノなんですが、開発をするときに、「痒いところに手が届く」的な
更なる支援をしてくれるエディッタがあります。
Mery (メリー) です。

色々なところが良く出来ていますが、僕が良く使うのが、
編集するときに、タグやコメントなど機能によって色分けしてくれる上に
印刷すると、そのままカラーで印刷されるところです。

これは、いい。

つくっているうちに、段々頭がぐちゃぐちゃになってきて、紙で見直すとき
「何がどうなっていたっけ?」
となることがありません。

もうひとつは、括弧の対応を教えてくれる機能です。
phpやらjavascriptを使っていると、if文のなかのfor文があって、その中で
関数呼んで変換掛けてとか・・・括弧の組み合わせが凄いことになっていますが

ま・・コーディング見なおせば?ってごもっともな話もありますが。

例えば、( にカーソルを位置づけると、対応する ) が太文字になって
対応を示してくれるのです。

もう、括弧を閉め忘れて、怒られることもありません。
ふっふっふっ

しかも、遠いところ、functionのはじめの { と 最後の } でも大丈夫。
画面を分割表示してあげても、ちゃんと表示してくれるのです。

傑作ですな。

○フォントはけっこー重要です

TeraPadには「VL ゴシック」、Meryには「Osaka」を設定しています。
コードをつらつらと紀貫之のように、書くのに適しているのは、
個人的には「VL ゴシック」かなと思いますが、
「Osaka」もなかなかいい味です。
ということで、別々の設定をしています。

どちらも、可読性が高くてスンバラシイ。

「RictyDiminished」なんかも、人気あるようですが、僕の環境では
上手く表示してくれないので、断念しました。

○javascriptが苦手な人に

僕は、javascriptがどちらかと言えば、苦手です。
だからと言って、phpが得意と言っているわけでは断じてありません。

なぜなら、phpは優しい(「易しい」じゃないですよ)ので
エラーがあると、親切にエラーを出して、行まで教えてくれます。

javascriptは冷徹なので、気に入らなければ知らんぷりで
動きません。

・・そうなんです。気付いたら動いてなかったりするのです。

そんなことで、くじけたくない貴方へ。
このURLを贈ります。

http://jshint.com/

自分のコードを、ここに貼り付けてみてください。

「ほーら、コンナニ沢山のWarnings」

文法間違いだけじゃないですよ。
あんなことや、こんなことまで指摘してくれます。

これで、javascriptが立ち塞がっても、
前を向いて歩んでいけますね。
(怪しい宗教じゃありません)

じゃ、こんなところで。



banner_03.gifこーでぃんぐ、それはイバラの道



posted by ろびんいちごー at 10:42| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2015年02月23日

PHP入門の本を買って、ひとの評価はいろいろだなーと実感する

書店に久々に行ってきました。

子供の辞典を買いにです。
店頭で、評判の良い辞典を中心に
色々なところを見比べて


に決まりました。

前回、辞典選びに失敗しているので
 収録語数
  読みやすさ
   でも、そこそこお安く

という基準で選んでます。

やっぱり、最近の辞典は良くなってますねー。
少子化で、競争が激化しているでしょうから
どんどん良くなるんでしょうね。

特に、国語辞典の

「投げる」【方言】
北海道・東北などでは、「捨てる」の意味でも使う。


なんかの表記は、家にある古い大辞林にも
載ってませんよ。

凄いなー👝

辞典選びも終わり、最近ネットで調べて回っている
PHPの本を立ち読みしていました。

Eclipseを(正確には、Pleiades All in One かな)
インストールした際に、ついでにインストール
されたPHP環境を、なんとか活かしたい。

という立ち位置なので、ま、最初は、
期待せず、「どんな本があるのかなー」位の
勢いでしたが、

というのが
あまりにも、自分のニーズにぴったりだったので
思わず、買ってしまいました。

本で使われているのが、
XAMPP 1.7.4
と適度に古く💣、僕の環境のバージョンと
同じなのも、高評価です。

Apacheをそのまま起動したときに
PCが、Webサーバーとして公開されちゃいますよと、
セキュリティについても、
言及してくれているのも、いいんじゃないでしょうか。

「あれ?もしかして、とても良い本買ったんじゃ?」
と、amazonの評価を見てみたら、
酷評されていて、唖然としました。

うーん。
ま、読んでいくと、「アップロードして実行しましょう」
とか書かれていて、
「え?ローカル環境で実行する前提なのに何故?」
と戸惑ったりしたのも事実ですが。

何の事はない、
\xampp\htdocs\php_testみたいなフォルダ配下に
作ったものを、置いておいて
ブラウザから
http://localhost/php_test/inquiry.html
というふうにアクセスするだけなんですが・・



でも、僕にとっては、丁度いい本だと思いましたよ。
他の言語で、「何か作ってみたよー」というひとが、
「え?なに?サーバーでなんかできんの?」
と「入門」するのにはぴったりではないかと。

わからないところは、ネットでちょろちょろ調べると。
いい感じで進めると思いますけどね。

それにしても、あの酷評っぷりには、
著者も戸惑っているに違いない。

厳しすぎるよ、皆さん。

こういう系統の本の誤記なんて、他の本でも
けっこーあるじゃないですか。。。。


banner_03.gif自分にぴったりであれば、それがベストなのです



posted by ろびんいちごー at 16:20| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする

2015年02月07日

ECLIPSE SWT javaで清く正しく動く実行形式EXEファイルの作り方

javaで六曜を出力するプログラムをつくりました。

西暦と六曜を対比したテーブルをどーんとファイル出力したり
 未来の六曜に思いを馳せたり
  西暦から旧暦へ変換する過程の複雑さに涙がちょちょぎれたり
  

色々な事ができるので、お試しいただければと。

で、コレを公開できたのが、ベクター上なんですね。
http://www.vector.co.jp/soft/winnt/personal/se509188.html

今まで、色々なものをダウンロードさせてもらってきましたが、
まさか、自分が登録する側になるとは思ってませんでした。
いやぁ、世の中、どうなるものか分かりませんね。

さくっと、ダウンロードできるので、
(32bit JREのインストールは必要です)

試して、
「ここは、良いねー」とか
 「ここは、なんとかして欲しい」とか
  「・・ダメじゃね?」(あ、これは凹む)

ベクター上にコメント、是非ください。


で、ここからがECLIPSE、SWTを使ってつくったjavaプログラムを
Windows上で動くEXEにする方法です。


始まりは、ECLIPSE上で、思った通りに動き始めたjavaプログラムを
とりあえず、EXEにしてみたところからです。
(このときは、jsmoothを使ってみた)

案の定、まったく、動きませんでした。はははっ。

ECLIPSEの庇護のもとを離れると、世間の厳しさを知る💦
っつー感じです。

「こりゃ、きちんと、やらにゃダメだね。」
って、ことで、やったことを片っ端から書いていきます。

@ECLIPSE上で発生しているエラー(ワーニングも含む)を取り去る

ECLIPSE上であれば、許容してもらえるものが、外れると
許されなくなるそうな。

僕の場合は、
・static宣言されているクラスをnewしていたり
・型の違う変数同士で、バンバン代入したり
・最初に宣言した変数を使っているつもりで、途中で宣言した
 変数をいつの間にか使っていたり(単なる物忘れ)
などなど大量にワーニングがあったので、ぜーんぶ取っ払いました。

Ajarファイルの出力方法を替える

それでも、

java -jar RokuyoSanpo.jar

こんな感じで、作成したjarファイルを動かすと
全然動かないという事象がでてがっかり⤵です。

なので、jarの作成の仕方を少し変えてみます。

ECLIPSE

エクスポート

実行可能JARファイル

起動構成:QRekiEvDvn-Rokuyosanpo
エクスポート先:C:\pleiades\workspace\RokuyoSanpo.jar
ライブラリー処理:生成されるJARに必須ライブラリーを抽出

完了

ちなみに、使っているECLIPSE環境は
http://mergedoc.sourceforge.jp/
Helios 3.6

BそもそもjavaVM環境は正しかったっけ?

僕は、Windows7の64bit版を使っているので、
JREも、何も疑わずに、64bit版を使っていたわけですが。

jarファイルを動かしてみると

「SWTのライブラリが32bitなのに、64bitで動かそうとしてないか?」
というように読み取れる、英文メッセージが。

うーん。よくわかんないが、やってみっか。
って、ことで、JREを32bit版に入れ替えると、jarは動くように。
そうなると64bit版の出番って・・いつ?

CEXE形式をつくるツールを変えてみた

jsmoothどうも、使い方がよくわからない。
そこで、exewrapというものを使ってみました。
何と言っても、マニュアルが日本語ですからね。

インストールしたexewrap.exeを対象ファイルのある
フォルダにコピっておく。

まず、こんな感じでLOGを出力するタイプをつくってみた
exewrap.exe -g RokuyoSanpo.jar

次に、大体動くようになったので、LOGを出力しないパターンで
exewrap.exe -g -e NOLOG RokuyoSanpo.jar

アイコンも付けてみたり
exewrap.exe -g -i rokuyo.ico -e NOLOG RokuyoSanpo.jar

それから、バージョン情報も入れてみたりして。
これは、使いやすい。
exewrapオススメです。


結論。

ECLIPSE上で、SWTを使ったjavaプログラムが動くように
なったからといって、

すぐ、EXEが動くようになる訳ではない

っつーことが身にしみた、昨今でございます。





banner_03.gif今回、初javaだったので理解できない事だらけでした



posted by ろびんいちごー at 22:45| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする


Powered by Seesaa
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。