私はあちこち検索しましたが、誰も私と同じ問題を抱えていませんでした。
基本的に、ユーザーは Excel 内のセルをクリックし、フォームを開き、値を入力し、挿入をクリックします。これらの変数を配列に追加し、Excel が読み取って配置するプログラム。
これは私の最初の Office アプリなので、ここでは完全に盲目的に飛んでいますが、これは私の擬似コードです。
私のソリューションが編集されました:
static string GetColumnLetter(int columnNumber)
{
var dividend = columnNumber;
var columnName = String.Empty;
while (dividend > 0)
{
var modulo = (dividend - 1) % 26;
columnName = Convert.ToChar(65 + modulo) + columnName;
dividend = ((dividend - modulo) / 26);
}
return columnName;
}
// Insert into Excel
public static void ExcelInsert(string mFunction, string mColor, int mQty, string mFau, string mPrice)
{
var values = new List<string>
{
mFunction,
mColor,
mQty.ToString(),
mFau,
mPrice
}.ToArray();
var rowNumber = Globals.ThisAddIn.Application.ActiveCell.Row;
var columnNumber = Globals.ThisAddIn.Application.ActiveCell.Column;
var columnLetter = GetColumnLetter(columnNumber);
for (var i = 0; i < values.Count(); i++ )
{
var range = Globals.ThisAddIn.Application.Range[String.Format("{0}{1}", columnLetter, rowNumber)];
range.Value = values[i];
columnNumber++;
columnLetter = GetColumnLetter(columnNumber);
}
}