【SimpleMind】CSVファイルデータを取り込んで使えるか検証

当ページのリンクには広告が含まれています。

こちらの内容はWindows版のものです。他の環境では操作が違う可能性があります。

CSV等で出力したデータが取り込めるかどうかを試してみました。

今回やりたいこと
  • CSVファイルのデータをSimpleMindに取り込みたい
  • 階層データも反映してほしい

これ以外の機能については下記の「SimpleMind基本機能まとめ」記事を参考にしてください。

目次

CSVデータをそのまま読み込む(インポート)する方法はあるのか?

SimpleMindの公式サイトを確認すると、一部の形式のファイルはインポートすることが可能だそうです。

CSVファイルから直接取り込む方法はなさそう

残念ながらこれらの対象ファイルにCSVはなかった。

でもTEXTファイルはインポートが可能なようです。

下記公式サイトの情報を参考にしています(外部サイトが開きます)

TEXTファイル形式で取り込んでみる

サンプルデータはこんな感じです。

通常CSVファイルはテキストで開くと「,(コンマ)」区切りになっているので、このままだと取り込みはできますが、うまく子トピックスの作成がされません

一つのトピックスの中に一行の内容が全部入る感じです。

CSVのデータをそのままTEXTファイルに張り付けて(もしくは保存する際にTEXT形式にして)もTEXTファイルに変換することはできます。

ですがこの方法だとうまくいかないようです。

ちなみに「トピックス」はマインドマップの「項目」のことと解釈して話しています(下記の画像)

ファイル形式を「テキスト(タブ区切り)(*.txt)」で保存を試してみたが失敗

「名前を付けて保存」でファイル形式を「テキスト(タブ区切り)(*.txt)」で保存しても「,」が「タブ」に置き換わって保存されます。

読み込むと子トピックスにならないのでダメでした。

「タブ」に変換はされているのですが、SimpleMindのタブの定義はそういうことではないようです。

この状態だと単純に「スペース」と解釈されているようです。

階層構造にならないとダメみたい。

下記画像が上記のデータを取り込んだ結果です。

子トピックスの判定は「タブ」で行っている?

タブというより行単位でトピックスを判定しているようです。

行の開始位置によってトピックスがどの階層に当たるかを自動判定してくれます。

なのでちょっとひと手間必要です。

STEP
CSVファイルを加工する(手動)

テキストファイル等で開いて手動で一行づつ調整する必要があります。

正直数が多いと余り実用的ではありませんが、まずはお試しです。

数値データだと何が何かわかりにくいですね。サンプルデータが悪かった・・・

STEP
SimpleMindを開きます

該当のTEXTファイルを「開く」でSimpleMindを選択して開けば自動で新規作成されます(その場合は下記のステップは不要です)

STEP
ファイルから「マインドマップを開く」を選択します

ツールバーの開くボタンでもOKです。

STEP
作成したTEXTファイルを選択して開きます

エクスプローラに表示されていない場合はファイルの種類が「SimpleMind~」になっている可能性があるので「アウトラインテキスト(.txt)(*.txt)」を選択します

STEP
階層データとなって表示されます

下記のように階層アウトラインと取り込み前のテキストが同じになるようにしないとダメみたいです。

取り込んでくれるのはいいけど事前準備がちょっと大変・・・

一発でCSVから階層データの形にしたTEXTファイルが作成できる方法がるのであれば便利な機能ですが、いちいち手動でこれを作成するのは正直あまり現実的ではないかも・・・?

数が少なければできますが、数が少ないならいっそSimpleMind上で作った方が楽な気がしますし・・・

改行だけなら簡単だけど文字の前に入れる「タブの数(階層に影響する)」も調整する必要があるので、単純に改行の置換とかでは対応できなそう。

VBAとかで作れば対応したテキストファイル変換ができそうな気がしますが、今のところ試していない(作ってない)ので何とも言えません。

なんか簡単にできるいい方法ないかな・・・

一応作ってみた階層ファイル作成VBA(2階層まで対応)

とりあえず自分用として作ったものなので、変なところもあるかと思いますが参考までに載せました。

下に利用する場合の簡単な手順と説明を書いておきます。

コピペ、カスタマイズ等ご自由にどうぞ

こちらのコードを利用して起こったいかなる損害も私は責任を負いません。自己責任でご利用ください

Option Explicit

'データを階層に変換する
Sub ConvertToHierarchy()

    '----------------------------------------------------------------------------
    '【注意】一番上に一番深い階層のデータを置く(一番多いcolumnの取得が必要な為)
    '----------------------------------------------------------------------------

    Dim rangeFruitData As Range                 'フルーツデータを範囲として格納
    Dim maxRow, maxColumn As Long               '最終行、列
    Dim setRow, setColumn As Long               '入力する行、列
    Dim getRow, getColumn As Long               '取得する行、列


    '変数の取得
    maxRow = Cells(Rows.Count, 1).End(xlUp).Row                         '最終行の取得
    maxColumn = Cells(1, Columns.Count).End(xlToLeft).Column            '最終列の取得
    Set rangeFruitData = Range(Range("A1"), Cells(maxRow, maxColumn))   'データを範囲で取得
    
    '新しくシートを作成(作成するとアクティブになるのでselectは入れない)
    Worksheets.Add
    
    '入力する行初期化
    setRow = 1
    
    'データ行をループ
    For getRow = 1 To maxRow
        
        '入力する列初期化
        setColumn = 1
        
        '列をループ
        For getColumn = 1 To maxColumn
                
                '1列目以上だったら2列目に格納する ===> 3行目以降も作成したいなら条件の見直しが必要
                If getColumn > 1 Then
                    setColumn = 2
                End If
                
                '格納するデータが空白以外の場合はセルに格納(空白の場合は行カウントもしない)
                If rangeFruitData(getRow, getColumn) <> "" Then
                    Cells(setRow, setColumn) = rangeFruitData(getRow, getColumn)
                    setRow = setRow + 1
                End If
                
        Next getColumn
    
    Next getRow
    
    'セントラルトピックスを作成(行と列を追加してA1に文字を入れる)
    Columns(1).Insert
    Rows(1).Insert
    Range("A1") = "メイン"

End Sub

上記VBAの使い方

STEP
Excelに下記のように対象のデータを入力しておく
STEP
上記VBAを実行する

該当のデータがあるシート上で実行してください

STEP
新しいシートに下記のようにデータが作成される

シート名は自動で適当に(sheet1とか)付けられます。

STEP
使用したい範囲(今回の場合は)A1~C24までを選択してコピー
STEP
メモ帳に貼り付けする

メモ帳でなくてもいいですが、ExcelのセルごとコピーするとSimpleMindの方で正常に認識されないので、一旦テキストエディタなどにコピーする必要があります。

STEP
メモ帳のデータをすべて選択して再度コピーします
STEP
SimpleMindを開き新規作成アイコンをクリック
STEP
上段真ん中の「クリップボードから」を選択します

この段階でサンプル画像がおかしいときは先程コピーしたクリップボードのデータがおかしい可能性があります。

再度メモ帳でコピーしてから新規作成アイコンをクリックしてください。

コピーする際は漏れが無いようにCtrl+Aでメモ帳内のデータ全てを選択した状態でやると安心

STEP
階層が反映された状態で作成されます

まとめ

便利な機能なのですが、私のリサーチ不足かもしれませんが今一ビシッとは決まりませんでした。

もっと良い方法が見つかったらまた追記、修正していきたいと思います。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次