ページビューの合計

ラベル Excel の投稿を表示しています。 すべての投稿を表示
ラベル Excel の投稿を表示しています。 すべての投稿を表示

2020年4月23日木曜日

[表形式でコピー]の機能強化?について

When pasting the view data that is "Copy in table format", you can now paste the document link as well.
However, it was said that this link is not necessary for users who simply want only character data, so I prepared a procedure for bulk deletion.

みなさま、こんにちは!
コロナウィルスの影響真っ只中ですが、くれぐれも外出は控えて頂き、この難敵から一刻も早く開放されますよう、努力いたしましょう。

さて今回はビューを[表形式でコピー]してエクセルに張り付けて利用される用途はよく使われているかと思います。

弊社でもかなりの用途で利用しているのですが、V11にマイグレーションしたことで機能強化された内容があるのですが、実はこれが結構使いにくいという意見が多く寄せられました。

具体的には、エクセルに張り付けた際、文字データとともに文書リンクが張り付いてしまうのです。
しかもなぜか「透明」で・・・。
行の先頭にあるため、結構な頻度で文書リンクを触ってしまい、弊社では以下のような通知が表示されてしまいます。


リンクに飛ぶようなエクセルファイルを作るのであれば非常に便利なのですが、そうでない場合は結構邪魔な存在になります。

ということで、こちらを一括で削除する手順を本日は掲載させて頂きます。
こんなところにわざわざ書かなくても、エクセルを知ってる方ならなんてことない機能なのですので、お許しください。


それでは早速ですがエクセルにデータを貼り付けた状態からスタートします。
見た目はこんな感じです。


見た目だけですと、普通のエクセルシートなのですが、実は・・・


このように文書リンクが存在しているのです。

いちいち選択して[DEL]なんてやってられませんよね。
ということで一括で選択して消しちゃいます。

使う機能はエクセルの[ジャンプ]です。
対象のシートで[F5]を押し、[ジャンプ]ダイアログを表示させます。


この[セル選択...]をクリックし、[選択オプション]を表示します。


このように[オブジェクト]を選択して[OK]すると・・・


すべての文書リンクが選択されました。
あとは[DEL]キーを押すだけです。

以上、単純な処理ですが、せっかくの機能アップを否定されてばかりなのもどうかと思い、記事とさせて頂きました。
文書リンクそのものは個人的には良い機能だと思いますので、こちらを利用するような使い方も考えてみてはいかがでしょう。

2019年11月21日木曜日

#Excel からのインポートについて

I have prepared a sample that you can download about "VBA that imports Excel data into Notes documents" that I previously wrote.
Please try.

みなさま、こんにちは!

昨日のノーツコンソーシアム オープンセミナーいかがでしたか?
HCL様からのアナウンスに加え、各研究会の成果報告、パートナー様製品案内、さらには移行支援ツールやV11の新機能など、盛りだくさんの内容で大満足の1日でした。

さてそんな盛り上がりも冷めやらぬ中、次なるイベントが予定されています。

2019年12月4日、HCL Software Digital Solutions、東京 Factory Tour 4 開催のお知らせ

 開発責任者が勢揃いして日本で熱く語って頂けるとの事ですので、楽しみな機会ですね。
なかなか名刺交換するような接点も少ないかと思いますので、無理やり時間を割いても価値あるイベントかと思います。

続いて同日夜には

HCL Digital Solution (Collaboration) Live from Tokyo Keynote

もございます。
HCL Digital Solution (コラボレーション) 部門の戦略および製品発表のワールドワイド向けの Live WebCast がなんと東京で開催されるんです!!
驚きですね。

ということでこのLive WebCast についても、楽しそうなイベントが企画されています。

Domino v11 Release Party & Live Viewing of World Premiere

World Premiereライブビューイング

去年のV10パーティーが思い出されます。
またあのような熱い時間が過ごせるのかと思うと、今からソワソワしてしまいます。

私はすべてに参加致します。皆様とお会いできることを楽しみにしております!!


さて前置きが長くなってしまいましたが、本題です。
以前、当ブログの記事として、

ExcelのデータをNotes文書にするVBA

という内容を記載致しましたが、このエクセルからノーツへのインポート案件は結構要望されているユーザー様も多いようで、また困っているという話もよく聞きます。

今回もとあるユーザー様よりお問い合わせを頂き、弊社で使用しているVBAを組み込んだxlsmファイルをお渡ししたところ、無事利用できたとの連絡を頂くことができましたので、そちらのファイルを一部手直ししたものをダウンロードできるよう準備致しました。


解凍頂くと、マクロ有効のエクセルファイルがひとつございます。
使い方シートに設定箇所を記載してありますが、一部VBAの記述を変更頂く必要があります。

  1. サーバー名
  2. アプリケーション名
  3. フォーム名
  4. フィールド名
修正完了すれば、「インポート」というマクロを実行して頂きます。
VBAがうまく設定されていれば、指定されたアプリケーションに文書が追加されることになります。

必要に応じて、アプリケーションやフォームの数だけファイルをコピーして使ってください。

それでは12月にお会いしましょう!



2017年6月19日月曜日

ExcelのデータをNotes文書にするVBAのサンプルファイル

みなさま、こんにちは!
アリンコに要注意な島からの情報発信です(汗

先週のテクてく、いかがでしたか?
大阪でのPVに参加したかったのですが、本業の会議と重なり、どうしても参加できませんでした。せめてリモートで画面だけとパソコンを持ち込んだのですが、それもできず。
資料のみ入手して、我慢しております。
大阪のPVは継続頂けるようですので、今回ご参加できなかった皆様も、ぜひ来月はご一緒しましょう!!

さて先月、標題記事を記載させて頂きましたが、本日は配布できそうな状態のExcelファイル(.xlsm)が完成しましたので、そちらの紹介とサンプルダウンロードへのリンクを掲載させて頂きます。

早速ですが、サンプルのダウンロードはこちらよりお願いします。

中身ですが、シートは全くのブランクになります。

標準モジュールとして以下のふたつを含んでおります。

●ExcelのSheet1の1行目の値をNotesの指定データベースの指定フォームにインポートした新規文書を保存する。最後にSheet1の1行目を削除する。


Private Sub import_notesdb()

Dim Session As Object
Dim db As Object
Dim doc As Object

Set Session = CreateObject("Notes.Notessession")
Set db = Session.GetDatabase("サーバー名", "データベース名")
Set doc = db.createdocument(db)

doc.form = "フォーム別名"
doc.フィールド名1 = Range("A1").Value
doc.フィールド名2 = Range("B1").Value
doc.フィールド名3 = Range("C1").Value
doc.フィールド名4 = Range("D1").Value
doc.フィールド名5 = Range("E1").Value
doc.フィールド名6 = Range("F1").Value
doc.フィールド名7 = Range("G1").Value
doc.フィールド名8 = Range("H1").Value
doc.フィールド名9 = Range("I1").Value
doc.フィールド名10 = Range("J1").Value
doc.フィールド名11 = Range("K1").Value
doc.フィールド名12 = Range("L1").Value
doc.フィールド名13 = Range("M1").Value
doc.フィールド名14 = Range("N1").Value
doc.フィールド名15 = Range("O1").Value
doc.フィールド名16 = Range("P1").Value
doc.フィールド名17 = Range("Q1").Value
doc.フィールド名18 = Range("R1").Value
doc.フィールド名19 = Range("S1").Value
doc.フィールド名20 = Range("T1").Value
doc.フィールド名21 = Range("U1").Value

Call doc.Save(True, True)

Sheets("Sheet1").Select
Rows("1:1").Select
Selection.Delete Shift:=xlUp

End Sub


赤字部分は貴社環境に合わせて変更してください。
項目は多めに記載していますが、必要に応じて増減させてください。

前回の記事ではPublic Subとしていましたが、実際のインポートは次に作成する繰り返しの処理で行いますので、Private Subに変更しています。


●Sheet1のセルA1が"空白"になるまで、処理を繰り返す。


Sub インポート()
    Do Until Sheets("Sheet1").Range("A1") = ""
        Call import_notesdb
    Loop
End Sub


もし1列目にタイトル行がある場合は、列番号に関わる部分を"2"などに修正してください。


サンプルの紹介は以上になります。

先日も書きましたが、弊社では基幹システムのデータをExcelやCSVに抽出し、Notesに取り込む作業がいくつかありますが、現在はすべてVBAに切り替えました。

今後は、ユーザーが申請するワークフローで、フィールド数の多いものなどについて、エクセルでの入力フォームを配布し、ユーザー各自がVBAを利用してNotes文書に登録できるような運用にも利用予定です。


ぜひお試しください!!


2017年5月22日月曜日

ExcelのデータをNotes文書にするVBA

皆様、こんにちは!!
先週末のテクてくLotus技術者夜会 ザ・大阪編、いかがでしたでしょうか。
私の発表はともかく、他の皆様の内容は非常に興味深いものばかりでした。

近々資料もアップロードされるかと思いますので、参加できなかった皆様もぜひご一読いただければと考えております。

さて今回は前回記載しましたユニバーサルテンプレート アクション編を次回にまわさせて頂き、テクてくにてI様が触れられていたExcel VBAを利用したNotesの運用にヒントを頂き、早速社内業務に適用してみましたので、そちらについて記載させて頂きます。

I様の事例では、ExcelシートにNotesアプリケーションのデータを呼び込むというものでした。
弊社では基幹システムからデータをExcelに呼び出し、CSV化してNotesにインポートするという業務が複数あり、都度colファイルを切り替えながらという手間がありました。

今回はExcelに呼び出したデータをVBAを利用し、Notesの新規文書として保存する手順を記載させて頂きます。
※データ項目数はかなり多いものですが、今回は割愛して紹介させて頂きますので、ご了承ください。

まず従来呼び出していたExcelファイルです。


A列から、部課コード・担当者コード・取引先コード・取引先支店コードの4項目がセットされています。

早速ですが、VBAのコードです。

-----------------------------------------------------------------------------------------
 Public Sub import_notesdb()

  Dim Session As Object
  Dim db As Object
  Dim doc As Object

  Set Session = CreateObject("Notes.Notessession")
  Set db = Session.GetDatabase("サーバー名", "DB名.nsf")
  Set doc = db.createdocument(db)

  doc.form = "フォーム名(別名)"
  doc.フィールド名1 = Range("A1").Value
  doc.フィールド名2= Range("B1").Value
  doc.フィールド名3 = Range("C1").Value
  doc.フィールド名4 = Range("D1").Value

  Call doc.Save(True, True)

 End Sub

-----------------------------------------------------------------------------------------

赤字の部分は貴社環境に合わせて変更してください。
特に難しいコードはひとつもありませんね。

Excelブックを保存し、「import_notesdb」を実行します。
Notesアプリケーションを開くと、インポートされていることがわかります。


文書を開くと、


指定したフィールドに値がセットされています。

とっても簡単ですね!!
今まで苦労していましたので、かなり便利になりました。
また副産物としてCSVデータをNotesに呼び出した場合、先頭の"0"が消えるという現象がありましたが、このVBAではこちらも回避できるようになりました。

あとは複数行のデータを繰り返すように組み替えれば完成です。

従来Notesのインポート操作を一般ユーザーに教えるのは少し難しいところがあったのですが、Excel VBAですと誤った操作をしてしまうことも回避できるため、こちらも大きな進歩になりました。

I様、重要なヒントありがとうございました!!


次回はユニバーサルテンプレートに戻る予定です。