powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вставить Сontrol Label в лист екселя
7 сообщений из 7, страница 1 из 1
Вставить Сontrol Label в лист екселя
    #38170750
vallot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Использую библиотеки:
Код: c#
1.
2.
using Excel = Microsoft.Office.Interop.Excel;
using Microsoft.Office.Tools.Excel;


но все, что нашел не работает!
вот:
Код: c#
1.
lbl1 = xlWorkSheet.OLEObjects("Label1") as Microsoft.Office.Interop.Excel.Label;


или вот:
Код: c#
1.
xlWorkSheet.Shapes.AddLabel(msoTextOrientationHorizontal, 1, 1, 10, 10);



а этот вообще Controls не дает

Код: c#
1.
2.
3.
  Microsoft.Office.Tools.Excel.Controls.Label
        label1 = this.Controls.AddLabel(this.Range["A1"], "label1");
        label1.Text = "First Name";



все примеры у меня не работают, что у меня не хватает(кроме мозгов)?
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38170784
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vallot,

Вот что можно использовать в качестве отправной точки (выкладываю запись макроса Excel):
Код: vbnet
1.
2.
3.
4.
5.
Option Explicit

Sub Macros1()
    ActiveSheet.Labels.Add(48, 30, 293.25, 15)
End Sub



Далее, думаю, сможете догадаться...
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38170827
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vallot,

Ну, или можно ещё вот так(опять-же это лишь макрос):

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Sub Macro1()
    
    Dim lbl As OLEObject
    
    ActiveSheet.OLEObjects.Add "Forms.Label.1", Left:=10, Top:=60, Height:=20, Width:=100
    Set lbl = ActiveSheet.OLEObjects("Label1")
    lbl.Name = "lbl1"
    lbl.Object.Caption = "Newly Added Label"
    Set lbl = Nothing
End Sub
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38170932
vallot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще то, я в СИ ШАРПЕ после ВБА и Ексель знаю хорошо,
и я бы не задавал вопрос, не перепробовав кучу кодов!
У меня что-то с библиотекой, мне кажется!
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38170965
Alex Kuznetsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vallotВообще то, я в СИ ШАРПЕ после ВБА и Ексель знаю хорошо,
и я бы не задавал вопрос, не перепробовав кучу кодов!
У меня что-то с библиотекой, мне кажется!Вообще-то, если что-то не работает, то появляется ошибка, коей предоставлено не было, а хрустальные шары нынче дома остались...
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38171526
vallot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
using System;
using System.Threading;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Diagnostics;
using System.Collections;
using System.Reflection;
using Excel = Microsoft.Office.Interop.Excel;
using Microsoft.Office.Tools.Excel;
using System.Runtime.InteropServices;

namespace AAA
    {
    class BBB
        {

        Excel.Application ObjExcel;
        Excel.Workbook xlWorkBook;
        Excel.Worksheet xlWorkSheet;
        ClearExcelAll clea = new ClearExcelAll();
        Excel.Label lbl1;
        Excel.Range rg;
         Microsoft.Office.Core.MsoTextOrientation msoTextOrientationHorizontal;



        public void CCC()
            {
            ObjExcel = new Excel.Application();
            //Книга.
            xlWorkBook = ObjExcel.Workbooks.Add(Application.StartupPath + @"\Test.xls");
            //Таблица.            
            xlWorkSheet = (Excel.Worksheet)xlWorkBook.Sheets[1];

            xlWorkSheet.DisplayRightToLeft = false;
            //////Вызываем нашу созданную эксельку.
            xlWorkBook.Sheets[1].Activate ();
           
            ObjExcel.Visible = true;
            ObjExcel.UserControl = false;

            //////////////////

//так хотел изменить текст  в существующем лейбле
lbl1 = xlWorkSheet.OLEObjects("Label1") as Microsoft.Office.Interop.Excel.Label;
 lbl1.Caption = "First Name";

//так хотел создать сначала лейбл
xlWorkSheet.Shapes.AddLabel(msoTextOrientationHorizontal, 1, 1, 10, 10);


//здесь тоже создать сначала лейбл(этот пример из MSDN)
  Microsoft.Office.Tools.Excel.Controls.Label
   rg=(Excel.Range)xlWorkSheet.Cells[2, 2];
         lbl1; = this.Controls.AddLabel(rg, "label1");
          lbl1.Caption = "First Name";








           

            /////// Clear Exel /////
            clea.ClearExel(ObjExcel, xlWorkBook, xlWorkSheet);

            }
     }
}




У меня не работает. Кто нибудь имел с Label в ексель дело?
...
Рейтинг: 0 / 0
Вставить Сontrol Label в лист екселя
    #38171656
vallot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел решение, но только для текст бокса:

Код: c#
1.
2.
3.
4.
Excel.Shape txtBox = xlWorkSheet.Shapes.AddTextbox ( Microsoft.Office.Core.MsoTextOrientation.msoTextOrientationHorizontal, 10, 10, 120, 70 );
            txtBox.TextFrame.Characters ( misValue, misValue ).Text = "31.5";
            txtBox.TextFrame.Characters ( misValue, misValue ).Font.Size = 12;
            txtBox.TextFrame.Characters ( misValue, misValue ).Font.Bold = true;



На безрыбье и рак... сойдет:))
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вставить Сontrol Label в лист екселя
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]