Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Макрос нумератор
 
Прошу прощения за мою не дальнозоркость! Исправлюсь !
вопрос был решен благодаря пользователю devilkurs стороннего сайта . Ссылка на тему  
Скрытый текст
Макрос нумератор
 
Если вы обратили внимания, то я в тексте темы указал что я только учусь и пытаюсь разобраться! Приношу извинения за не корректные данные о том кто справился с вопросом!
Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал: а я,... без мяса и яиц!
нет, не остался )))) у меня друзья едут в Питер могу передачку передать))))))
Макрос фильтр для создания прайс листа
 
Kuzmich, Спасибо! я Воспользовался данными от  Karataevа

Вопрос закрыт!
Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал: Я подправил ваш файл
Простите, но не понимаю что именно подправили
Макрос фильтр для создания прайс листа
 
Kuzmich, спасибо большое за помощь! Очень сильно помогли, многое подчерпнул для себя и узнал нового! Но мне помогли на сайте мир excel, пользователь Karataev
высылаю его код!
Код
Option Explicit

Sub Сформировать()

    Dim shSrc As Worksheet, shRes As Worksheet, arr()
    Dim lr As Long, i As Long
    
    Application.ScreenUpdating = False
    
    Set shSrc = ActiveSheet
    Set shRes = Worksheets("Прайс лист")
    
    If shRes.UsedRange.Rows.Count > 1 Then
        shRes.Rows("2:" & shRes.UsedRange.Rows.Count).Delete
    End If
    
    lr = shSrc.Columns("B").Find(What:="*", LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _
        , SearchFormat:=False).Row
    
    shRes.Range("A2:B" & lr).Value = shSrc.Range("B2:C" & lr).Value
    shRes.Range("C2:H" & lr).Value = shSrc.Range("I2:N" & lr).Value
    
    shRes.Sort.SortFields.Clear
    shRes.Sort.SortFields.Add Key:=shRes.Columns("A"), SortOn:=xlSortOnValues, Order:=xlAscending
    With shRes.Sort
        .SetRange shRes.Range("A1:H" & lr)
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .Apply
    End With
    Application.Goto shRes.Range("A1")
    shSrc.Select
    
    lr = shRes.Columns("A").Find(What:="*", LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _
        , SearchFormat:=False).Row
    arr() = shRes.Range("A1:B" & lr).Value
    
    shRes.Range("A2").Value = 1
    shRes.Range("A2:A" & lr).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1
    
    For i = UBound(arr, 1) To 2 Step -1
        If arr(i, 1) <> arr(i - 1, 1) Then
            shRes.Rows(i).Insert
            shRes.Cells(i, "A").Resize(1, 8).Interior.Color = 3243501
            shRes.Cells(i, "B").Font.Color = 16777215
            shRes.Cells(i, "B").Value = arr(i, 1)
        End If
    Next
    
    Application.ScreenUpdating = True
    
    MsgBox "Готово", vbInformation

End Sub

Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал: Зачем в породе Маран два раза один и тот же окрас голубо-окаймленный?
отвечаю по поводу Маранов: это два разных гнезда (две разные линии, так же есть и орпингтоны золотистый черно-окаймленные)
Макрос фильтр для создания прайс листа
 
Kuzmich,
Макрос фильтр для создания прайс листа
 
Kuzmich, спасибо большое!
Тут немного не получается!!!!!!
К примеру я добавляю новую породу, то мне в прайсе под нее нужно создавать шаблон строк как у выше стоящих пород и окрасов?
Макрос фильтр для создания прайс листа
 
Юрий М, приношу извинения! более этого не повториться
Макрос фильтр для создания прайс листа
 
именно ))))) по вай-фаю
Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал:
Да, коньяк мне уже обещали, тонну шоколада обещали, но увы...
Я пытаюсь сделать, немного не получается.
Буду в питере сразу привезу
я пробую это сделать через сводные таблицы там примерно что то получается (лист называется сводный прайс)
Изменено: AranyHunter - 09.12.2015 22:59:05
Макрос фильтр для создания прайс листа
 
Kuzmich, если Вы мне подскажете как правильно это сделать то буду премного благодарен )))))) с меня яйца и мясо )))
Изменено: AranyHunter - 09.12.2015 21:07:06
Макрос фильтр для создания прайс листа
 
Прошу прощения, то что указано в прайс листе это отсебятина! Конечно же все цены берутся из листа курятники!
наверное можно, но это пример и там указано только 3 породы и несколько окрасов..... а у меня 72 породы и у них множество окрасов, которые повторяются  
Только начинаю вбивать
Изменено: AranyHunter - 11.12.2015 16:49:55
Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал: Про цену уточните
Что именно уточнить?
Цена инкубационного яйца за шт. (столбец I), Цена суточного цыпленка за шт. (столбец J), Цена недельного цыпленка (столбец K), Цена двухнедельного цыпленка за шт. (столбец L), Цена трехнедельного цыпленка за шт. (столбец M), Цена месячного цыпленка за шт. (столбец N) копируются в одноименные столбцы в прайс листе т.е в столбец C, D, E, F, G, H и так далее
Изменено: AranyHunter - 11.12.2015 16:49:19
Макрос фильтр для создания прайс листа
 
Цитата
Kuzmich написал: Вам надо заполнить имеющиеся позиции Прайс листа на основе листа Курятники?
Да именно так)
Макрос фильтр для создания прайс листа
 
И еще раз доброго времени суток!
Помогите пожалуйста написать макрос фильтр для формирования прайс листа, в новом листе прайс
Данные берутся с листа "Курятники" : Порода (столбец B), окрас (столбец C), Цена инкубационного яйца за шт. (столбец I), Цена суточного цыпленка за шт. (столбец J), Цена недельного цыпленка (столбец K), Цена двухнедельного цыпленка за шт. (столбец L), Цена трехнедельного цыпленка за шт. (столбец M), Цена месячного цыпленка за шт. (столбец N)
Копируются в одноимённые столбцы, но порода и окрас в одном столбце B, а нумерация в столбце А (только на против окраса)
Пример:
Амераукана
1 белый
2 дикий
Фавероль
3 лососевый
Кохинхин
4 голубой, черный
5 золотистый черно-окаймленный
6 серебряный черно-окаймленный
7 черный мрамор
8 белый

Пример формы заполнения вложил (Лист "прайс лист") и базы
Изменено: AranyHunter - 10.12.2015 00:45:59
Макрос нумератор
 
Вопрос закрыт
справился
Макрос нумератор
 
Наверное я уже всех достал, но я еще только учусь и пытаюсь разобраться методами научного тыка и консультаций, и вашей помощи
Возник вопрос с автонумератором с столбца.
Нужно что бы в столбце A вставлялся порядковый номер 1,2,3,4 и так далее при заполнение UserForm
вот код
Код
Private Sub CommandButton1_Click()
 EmptyRows = WorksheetFunction.CountA(Range("B:B")) + 1

If ComboBox1.ListIndex = -1 Then Worksheets("Породы гнезда").Cells(Worksheets("Породы гнезда").Cells(Rows.Count, "B1:B").End(xlUp).Row + 1, "B").Value = ComboBox1.Value
 Cells(EmptyRows, 2) = ComboBox1.Value

If ComboBox2.ListIndex = -1 Then Worksheets("Окрасы").Cells(Worksheets("Окрасы").Cells(Rows.Count, "C1:C").End(xlUp).Row + 1, "C").Value = ComboBox2.Value
 Cells(EmptyRows, 3) = ComboBox2.Value

If ComboBox3.ListIndex = -1 Then Worksheets("Породы гнезда").Cells(Worksheets("Породы гнезда").Cells(Rows.Count, "D1:D").End(xlUp).Row + 1, "D").Value = ComboBox3.Value
 Cells(EmptyRows, 4) = ComboBox3.Value
 Cells(EmptyRows, 5) = TextBox1.Value 'дата'
 Cells(EmptyRows, 6) = TextBox2.Value 'количество голов'
 Cells(EmptyRows, 7) = TextBox3.Value 'из них кур'
 Cells(EmptyRows, 8) = TextBox2.Value - TextBox3.Value
 Cells(EmptyRows, 9) = TextBox4.Value  'инкубационное яйцо'
 Cells(EmptyRows, 10) = TextBox5.Value 'суточные цыплята'
 Cells(EmptyRows, 11) = TextBox5.Value + 50 'недельные цыплята'
 Cells(EmptyRows, 12) = TextBox5.Value + 100 'двухнедельные цыплята'
 Cells(EmptyRows, 13) = TextBox5.Value + 150 'трехнедельные цыплята'
 Cells(EmptyRows, 14) = TextBox5.Value + 200 'месячные цыплята'
 Cells(EmptyRows, 15) = TextBox5.Value + 400 'двухмесячные цыплята'
 Cells(EmptyRows, 16) = TextBox5.Value + 600 'трехмесячные цыплята'
 Cells(EmptyRows, 17) = TextBox5.Value + 800 'четырехмесячные цыплята'
 UserForm_Initialize
End Sub

Private Sub CommandButton2_Click()
Call UserForm_Initialize
End Sub

Private Sub CommandButton3_Click()
 UserForm1.Hide
End Sub

Private Sub UserForm_Initialize()

 ComboBox1.Clear: ComboBox1.Text = ""

For I = 1 To Worksheets("Породы гнезда").Cells(Rows.Count, "A").End(xlUp).Row
 ComboBox1.AddItem Worksheets("Породы гнезда").Cells(I, "A").Value
Next I

 ComboBox2.Clear: ComboBox2.Text = ""

For I = 1 To Worksheets("Окрасы").Cells(Rows.Count, "A").End(xlUp).Row
 ComboBox2.AddItem Worksheets("Окрасы").Cells(I, "A").Value
Next I

 ComboBox3.Clear
For I = 1 To Worksheets("Породы гнезда").Cells(Rows.Count, "B").End(xlUp).Row
 ComboBox3.AddItem Worksheets("Породы гнезда").Cells(I, "B").Value
Next I
 TextBox1.Text = Format(Now(), "dd.mm.yyyy") 'дата'
 TextBox2.Value = "" 'количество голов'

 TextBox3.Value = "" 'из них кур'

 TextBox4.Value = "" 'цена инкубационного яйца'

 TextBox5.Value = "" 'цена суточного цыпленка'

End Sub
Макрос в UserForm прибавляющий определенную сумму
 
Цитата
Sanja написал: для будущих поколений объясните смысл строк 14-16 Вашего кода
эти строки автоматически прибавляют определенную, неизменную, сумму к строке 10. т.е. к textbox8 +50, +100, +150 и вносят их в таблицу
Макрос в UserForm прибавляющий определенную сумму
 
Вопрос закрыт
Код
Private Sub CommandButton1_Click()
EmptyRows = WorksheetFunction.CountA(Range("B:B")) + 1
Cells(EmptyRows, 2) = ComboBox1.Value
Cells(EmptyRows, 3) = ComboBox2.Value
Cells(EmptyRows, 4) = ComboBox3.Value
Cells(EmptyRows, 5) = TextBox3.Value
Cells(EmptyRows, 6) = TextBox4.Value
Cells(EmptyRows, 7) = TextBox5.Value
Cells(EmptyRows, 9) = TextBox7.Value
Cells(EmptyRows, 10) = TextBox8.Value
Cells(EmptyRows, 11) = TextBox8.Value + 50
Cells(EmptyRows, 12) = TextBox8.Value + 100
Cells(EmptyRows, 13) = TextBox8.Value + 150
Cells(EmptyRows, 14) = TextBox8.Value + 200
Cells(EmptyRows, 15) = TextBox8.Value + 400
Cells(EmptyRows, 16) = TextBox8.Value + 600
End Sub
Изменено: AranyHunter - 09.12.2015 11:36:04
combobox 1 и combobox2 можно ли сделать выборку двух значений
 
Доброго времени суток всем гуру программирования!
У меня возникла проблема c combobox
Есть порода, окрасы
Хотелось бы сделать так - выбор породы и окраса в одном combobox, а так же при добавление новых пород и окрасов они записывались в листы окрасы и породы (окрас зависим от порода, т.к пород много и у них много окрасов от этого зависит цена )
Код
ComboBox1.Clear
For I = 1 To Worksheets("Породы").Cells(Rows.Count, "A").End(xlUp).Row
 ComboBox1.AddItem Worksheets("Породы").Cells(I, "A").Value
Next I

 ComboBox2.Clear
For I = 1 To Worksheets("Окрасы").Cells(Rows.Count, "A").End(xlUp).Row
 ComboBox2.AddItem Worksheets("Окрасы").Cells(I, "A").Value
Next I

 ComboBox3.Clear
For I = 1 To Worksheets("Породы").Cells(Rows.Count, "B").End(xlUp).Row
 ComboBox3.AddItem Worksheets("Породы").Cells(I, "B").Value
Next I
Макрос в UserForm прибавляющий определенную сумму
 
И еще раз здравствуйте!
есть UserForm при заполнение в ней данных, захотелось расширить ее возможности (что бы в таблице не писать формулы как K2=J2+50, L2=K2+50 и т.д.).
Как сделать что бы при внесение данных в TextBox8 автоматически данные увеличивались на 50 и вносились в столбцы , но столбцов 5 (J, K, L, M, N.) Данные в столбец J вносятся через textbox8, остальные столбцы высчитывались автоматически по формуле K=J+50 J=K+50 L=J+50 M=L+50 N=M+50 (эти формулы неизменны для всех ячеек всего столбца)
Макрос, копирующий данные столбца до последней заполенной ячейки
 
Kuzmich, Спасибо большое разобрался)
Макрос, копирующий данные столбца до последней заполенной ячейки
 
Kuzmich, Спасибо. Но выдает ошибку 1004
Изменено: AranyHunter - 05.12.2015 18:23:44
Макрос, копирующий данные столбца до последней заполенной ячейки
 
Доброго всем времени суток! Я только пытаюсь разобраться с VBA и столкнулся с очень проблемным вопросом (для меня). Суть вопроса% нужен макрос который копировал данные столбца и переносил их на другой лист, но есть условие: он должен копировать данные до последней ячейки (так как данные будут в последствие добавлять)
к Примеру нужно скопировать с list1 столбец В до последней заполненной строки и вставить данные на list2 и так далее
Код
Sub ()
Application.ScreenUpdating = False
Application.CutCopyMode = False
iLastA = Worksheets("List2").Cells(Rows.Count, 1).End(xlUp).Row + 1
iLastB = Worksheets("List2").Cells(Rows.Count, 2).End(xlUp).Row + 1
iLastC = Worksheets("List2").Cells(Rows.Count, 3).End(xlUp).Row + 1

Worksheets("List1").Range("B1:B39").Copy
Worksheets("List2").Range("A" & iLastA).PasteSpecial xlValue
Worksheets("List1").Range("C1:C39").Copy
Worksheets("List2").Range("B" & iLastB).PasteSpecial xlValue
Worksheets("List1").Range("I1:I39").Copy
Worksheets("List2").Range("C" & iLastC).PasteSpecial xlValue
Application.CutCopyMode = True
Application.ScreenUpdating = True
End Sub
Страницы: 1
Наверх