|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
08.02.2008, 18:59 | #1 |
Регистрация: 08.02.2008
Сообщений: 3
|
Мне нужен мудрый совет по EXCEL.
Из 1-го листа перейти на 2-й,
На котором географическая карта. Проблема та, что мне необходимо работать по этой карте используя ячейки. Если это возможно, я буду очень признательна Вам за совет Анна. |
10.02.2008, 01:57 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Не асилил тех.задание, мало буков.
Опишите подробнее задачу, в чем именно проблема?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
10.02.2008, 02:34 | #3 |
Форумчанин
Регистрация: 21.08.2007
Сообщений: 292
|
лучше приложить файл сюда
|
10.02.2008, 14:58 | #4 |
Регистрация: 08.02.2008
Сообщений: 3
|
Игорь, просто СПАСИБО, за реакцию. Честно сказать, уже и не надеялась.
Я делаю информационную «программу». Меня интересуют металлургические и судостроительные заводы на Украине. В информация которую я предоставлю будет , ну назовем на Первом Листе, город Одесса. Для удобства пользователя (заказчика) который абсолютно не знает что такое Украина нужно на карте, которая будет (опять назовет на 2-м листе) выделить город Одесса. И так по каждому городу. Я сделаю все ссылки, но как, черт побери, установить обычный gif файл. Я установила файл, как ФОН и это было бы идеально, так как я смело управляю ячейками и могу делать с ячейкой, на которой расположен город Одесса, все что мне нужно, но это фон (файл.gif) на весь экран EXCEL.Вот и сижу в программе LviewPro и делю Украину на квадратики и вставляю в excel. Если то, что я написала так сумбурно, будет Вам понятно и Вы возможно найдете более простое решение, в любом случае я уже горжусь знакомством с Вами |
11.02.2008, 12:28 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Анна, не могу не ответить...
взаимной любезностью: в этом году я еще не получал писем с более приятным содержанием. Со мной случилась меланхолия, я просматривал неотвеченные темы, написал и... получил ТАКОЙ ответ. Приятно. А по существу - я встречал где-то в недрах Интернета описание макроса, который переводить растровые изображения на лист Excel. Автор утверждал, что получаются интересные картинки. Я тогда воспринял это просто как интересную идею, ан нет же, на Вашем примере, оказалось, что в этом есть практическая польза. Я пытался отыскать этот макрос, но, должен признать искал вяло (я не был уверен, что правильно уловил суть проблемы), результат соответственный. Дерзайте, решение существует... Не найдете - могу написать за 1-2 дня, самому интересно. p.s. А то, что Ваши заказчики не знают что такое Украина не делает им чести, да и нам тоже...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
11.02.2008, 14:00 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Аня, а что обязательно это в Эхеле делать?
I'm learning to live...
|
13.02.2008, 15:18 | #7 |
Регистрация: 08.02.2008
Сообщений: 3
|
Игорь, веришь, мысленно писала тебе 150 раз, но не послушавшись совета, что мысль материальна все-таки пишу.
Почему excel ? можно долго писать что нужна большая работа с данными + вывод экономического эффекта, но Виталия вопрос хорошо тем, что реально серьезно задумалась над ним и теперь точно знаю что просто, люблю я эту программу. Что еще, что еще??? ДА, ! Игроь, твой p.s. точен невероятно, особенно после зяпятой. Ну а теперь, в заключение, самые лучшие, самые искренние и добрые пожелания Вам из Нидерландов. А. |
13.02.2008, 17:28 | #8 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Ниже текст макроса.
Он может отобразить выбранный рисунок на листе экселя путем закрашивания ячеек в нужный цвет. Вещица корявая не судите строго. Но для отображения контуров Украины вполне сгодиться. Ограничения: 1. Работает только с ВМР-файлами. 2. ВМР должен быть 24-битным 3. ВМР должен быть не сжатым. 4. Ширина картинки до 256 пикселей. Если стартовая картинка не соответствует этим требованиям, необходим графический редактор, который позволяет произвести необходимые манипуляции с исходником чтобы привести его к нужным кондициям. И еще одно ВАЖНОЕ! замечание: картинка будет прорисована на активном листе, побеспокойтесь сами чтобы лист был без важных для вас форматирований. Данные и формулы не пострадают. Короче, рекомендую выполнить макрос на новом листе. Если нужна информация, как внедрить и выполнить макрос - напишу дополнительно. Спасибо всем, кто дочитал до этих слов. Дальше, собственно, макрос, состоящий из двух процедур. Выполнить необходимо InsPicture. Удачи. Привет всем нашим в Нидерландах! Sub InsPicture() Dim fn As String, W As Long, H As Long, w1 As Integer, dof As Long, bpp As Integer, sz As Long Dim r As Long, p As Long, ln As Long, BMP As Boolean, bt As Byte Dim rc As Byte, gc As Byte, bc As Byte With Application.FileDialog(msoFileDialo gFilePicker) .Title = "Выбери файл, или откажись от этой затеи" .Filters.Add "BitMap", "*.bmp" .AllowMultiSelect = False If .Show = -1 Then fn = .SelectedItems(1) Else Exit Sub End With Open fn For Random As #1 Len = 1 Get #1, 1, bt: BMP = bt = 66 Get #1, 2, bt: If BMP Then BMP = bt = 77 Close #1 If Not BMP Then MsgBox "Закрываемся... Не BMP-файл.": Exit Sub bpp = ReadNB(fn, 2, 29) If bpp <> 24 Then MsgBox "Закрываемся... Конвертируйте ваш файл каким-нибудь графическим редактором в 24-битный имидж.": Exit Sub dof = 1 + ReadNB(fn, 4, 11) W = ReadNB(fn, 4, 19): H = ReadNB(fn, 4, 23) If W > 256 Then MsgBox "Имидж очень большой. Нарисую часть. Принимается ширина до 256 пикселей. У экселя столько колонок:-(." Application.Calculation = xlManual Cells.Select: Selection.ColumnWidth = 0.33: Selection.RowHeight = 3 If W > 255 Then w1 = 255 Else w1 = W ActiveWindow.DisplayGridlines = False Range(Cells(1, 1), Cells(H, w1)).Activate: ActiveWindow.Zoom = True Cells(H + 1, 1).Select If (W * 3 Mod 4) = 0 Then ln = W * 3 Else ln = (Int(W * 3 / 4) + 1) * 4 For r = 0 To H - 1 For p = 0 To Int(ln / 3) rc = ReadNB(fn, 1, dof + r * ln + p * 3): gc = ReadNB(fn, 1, dof + r * ln + p * 3 + 1): bc = ReadNB(fn, 1, dof + r * ln + p * 3 + 2) If p = 256 Then Exit For If p < W Then Cells(H - r, p + 1).Interior.Color = RGB(rc, gc, bc) Next Next Application.Calculation = xlAutomatic End Sub Function ReadNB(s As String, n As Byte, of As Long) As Long Dim b As Byte, i As Byte, r As Long Open s For Random As #1 Len = 1 r = 0 For i = 0 To n - 1 Get #1, of + i, b r = r + b * 2 ^ (8 * i) Next Close #1 ReadNB = r End Function
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужен совет | Михаил Юрьевич | Общие вопросы Delphi | 2 | 07.06.2008 13:59 |
Нужен совет | Михаил Юрьевич | Общие вопросы Delphi | 3 | 04.05.2008 21:52 |
Нужен совет | Kler | Свободное общение | 0 | 27.03.2008 23:44 |
Нужен ваш совет | SZero | Помощь студентам | 3 | 24.02.2008 17:51 |
Нужен совет | Михаил Юрьевич | Общие вопросы Delphi | 7 | 27.01.2008 10:25 |