Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Помогите чайнику создать макрос!!! Добавлено: 05.10.06 16:28  

Автор вопроса:  bnova
Необходимо написать макрос, который выдает список всех непустых значений.
В Excel на Листе1 и Листе2 в столбцах находятся ячейки как с данными (есть повторяющиеся значения), так и пустые. На Листе3 нужно вывести список всех непустых значений с Листа1 и Листа2!
Подскажите, если кто знает, как это сделать!!!

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 Ramil



ICQ: 286597559 

Вопросов: 13
Ответов: 25
 Web-сайт: www.Ramil.boom.ru
 Профиль | | #1
Добавлено: 09.10.06 10:15
Для активации ячеек где есть цыфры в листе эксел предлогаю вот это
Sub SelectNumericValues()
    Dim rng As Range
        On Error Resume Next
            If TypeOf Selection Is Range Then
                If Selection.Cells.Count = 1 Then
                    ActiveSheet.UsedRange.SpecialCells( _
                        xlCellTypeConstants, xlNumbers).Select
                        Else
                    Selection.SpecialCells(xlCellTypeConstants, xlNumbers).Select
                End If
            End If
            
    End Sub

а дальше я не понел.
как эксел сам может узнать, куда скопировать на листе3, данные из двух других лист

Ответить

Номер ответа: 2
Автор ответа:
 bi-lya



Вопросов: 1
Ответов: 125
 Профиль | | #2 Добавлено: 09.10.06 18:33
Вообще-то конкретики не хватает. Данные, я понимаю, все равно в каком-то диапазоне на листе находятся (не весь же лист прочесывать), и каким образом должны ложиться "непустые" ячейки на 3 лист - в навал, что-ли, как придется или в определенный диапазон? А если предположить, что листы 1 и 2 заполнены больше чем на половину...короче, нужно это дело конкретизировать

Ответить

Номер ответа: 3
Автор ответа:
 angrynews



Вопросов: 33
Ответов: 119
 Web-сайт: www.angrynews.ru
 Профиль | | #3
Добавлено: 10.10.06 10:37
они должны ложиться в последующуюю ячейку, однако, если у тебя два листа полностью забиты данными (а это возможно). то на третьем листе просто не хватит места под них

Ответить

Номер ответа: 4
Автор ответа:
 bnova



Вопросов: 1
Ответов: 3
 Профиль | | #4 Добавлено: 10.10.06 10:47
Спасбо всем, кто ответил! Мне уже помогли! :) А вот что в итоге должно было получиться:

Dim SourceSheet1 As Worksheet
Dim SourceSheet2 As Worksheet
Dim ResSheet As Worksheet
Set SourceSheet1 = ActiveWorkbook.Worksheets("Лист1";)
Set SourceSheet2 = ActiveWorkbook.Worksheets("Лист2";)
Set ResSheet = ActiveWorkbook.Worksheets("Лист3";)

nRows = SourceSheet1.Range("A1";).SpecialCells(xlLastCell).Row
CurrJ = 1
For i = 1 To nRows
  If SourceSheet1.Cells(i, 2) <> "" Then
    ResSheet.Cells(CurrJ, 2) = SourceSheet1.Cells(i, 2)
    CurrJ = CurrJ + 1
  End If
Next i

nRows = SourceSheet2.Range("A1";).SpecialCells(xlLastCell).Row
For i = 1 To nRows
  If SourceSheet2.Cells(i, 2) <> "" Then
    ResSheet.Cells(CurrJ, 2) = SourceSheet2.Cells(i, 2)
    CurrJ = CurrJ + 1
  End If
Next i
End Sub

Все гениально и просто! :)

Ответить

Номер ответа: 5
Автор ответа:
 Demаn



ICQ: 409503304 

Вопросов: 6
Ответов: 18
 Профиль | | #5 Добавлено: 07.11.06 09:58
Добрый вечер, день или ночь, кому как повезёт помогите пожалста =( , надо написать макрос, в листе экселя введены числа, при запуске макроса должно вылезать окно ввода значений от и до, вводишь диапозон и программа выделяет числа из выделенного диапозона(неважно как выделяет), но есть загвоздка, эти числа должны выделяться тока в выделенной мышкой области листа! Не дайте пропасть студенту, помогите ламеру!

Ответить

Номер ответа: 6
Автор ответа:
 Ramil



ICQ: 286597559 

Вопросов: 13
Ответов: 25
 Web-сайт: www.Ramil.boom.ru
 Профиль | | #6
Добавлено: 07.11.06 11:00
Добрый день
Я очень хотел бы вам помочь, но я не полностью понял вас
Напишите подробно, что должен сделать для вас макрос.

Ответить

Номер ответа: 7
Автор ответа:
 Demаn



ICQ: 409503304 

Вопросов: 6
Ответов: 18
 Профиль | | #7 Добавлено: 07.11.06 16:18
Дан лист экселя, на нем в беспорядочном расположении находятся числа, макрос должен выделять эти числа в определённом отношении, тоесть должен задаваться диапозон, от какогото значения до какогото, тоесть в макросе ещё присутствует форма, эта часть не сложная я даже могу отправить её код, но загвоздка в том что эти числа он должен выделять, как угодно, но желательно цветом, в выделенной части экселя а не на всём листе( выделенная часть, тоесть когда ты выделяешь курсором правой кнопкой) вот таккая вот задачка.....

Ответить

Номер ответа: 8
Автор ответа:
 bnova



Вопросов: 1
Ответов: 3
 Профиль | | #8 Добавлено: 07.11.06 16:27
Мальчики, дорогие, ну зачем же в моей темке-то писать!?????

Ответить

Номер ответа: 9
Автор ответа:
 Demаn



ICQ: 409503304 

Вопросов: 6
Ответов: 18
 Профиль | | #9 Добавлено: 07.11.06 16:29
дак я же тока немного пошалил, мне тоже ведь помощь нужна, пррояви сострадание, тут хороший человек помочь решил, не обламывай плиз)

Ответить

Номер ответа: 10
Автор ответа:
 bnova



Вопросов: 1
Ответов: 3
 Профиль | | #10 Добавлено: 07.11.06 16:31
Ладно, проявлю! :) Успехов! :)

Ответить

Номер ответа: 11
Автор ответа:
 Demаn



ICQ: 409503304 

Вопросов: 6
Ответов: 18
 Профиль | | #11 Добавлено: 07.11.06 16:34
Пасибо!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам